龙空技术网

Java不同长度字母字符串排序方法探讨

秦羽 356

前言:

此刻姐妹们对“字符串字母排序java”大概比较关怀,咱们都需要了解一些“字符串字母排序java”的相关资讯。那么小编同时在网摘上搜集了一些关于“字符串字母排序java””的相关资讯,希望朋友们能喜欢,朋友们快快来了解一下吧!

基本思路

整体采用冒泡排序法,先比较字母字符串第一个字母编码值大小,若相等再比较第二位大小,以此类推(若出现bc和bca这样前边相同字符长度不同,则把短字符串下一位看做0)。

代码

import java.util.Scanner;

class cs1

{

public static void main(String[]args)

{

//创建长度为5的字符串数组

String a[]=new String[5];

Scanner sc=new Scanner(System.in);

System.out.println("请输入5个字母字符串:");

for(int i=0;i<5;i++)

a[i]=sc.next();

//排序

for(int i=0;i<5;i++)

for(int j=0;j<5-1-i;j++)

{

int k=0; //k+1为字符串位数

int x1=0; //储存字母编码值

int x2=0;

String t=null; //交换变量

for(int x=0;x<100;x++)

{

//两个字符串前边相同位数不同的情况

if(a[j].length()==0)

{

x1=0;

break;

}

if(a[j+1].length()==0)

{

x2=0;

break;

}

//判断字符串第k-1位是否相等

x1=(int)(a[j].charAt(k));

x2=(int)(a[j+1].charAt(k));

if(x1==x2)

k++;

else

break;

}

//两个字符串排序

if(x1>x2)

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

//输出字符串数组

System.out.println("排序后结果为:");

for(int i=0;i<5;i++)

System.out.println(a[i]);

}

}

测试结果

PS:本人java小白一枚,以上内容仅供大家交流参考,请大神们勿喷,如有不足请指出,谢谢~

标签: #字符串字母排序java