导航:首页 > 编程语言 > java中对字符串排序

java中对字符串排序

发布时间:2025-08-29 23:10:16

java中用Arrays sort()如何将字符串倒序排列如,将"abcdefg"排序为"gfedcba".

java中用arrays sort()方法将abcdefg倒序,可以先试用java的comparable接口先进行比较,然后排序,实例如下:

packagetest;

importjava.util.Arrays;
importjava.util.Comparator;

publicclassArraysort{
publicstaticvoidmain(String[]args){
Strings="a,b,c,d,e,f,g";
String[]strArr=s.split(",");
Arrays.sort(strArr,newcom());//排序
for(Stringstr:strArr){
System.out.print(str+",");
}
}
}

classcom<T>implementsComparator<T>{//对abcdefg进行比较大小,排序
publicintcompare(To1,To2){
inti=Integer.parseInt(String.valueOf(o1));
intj=Integer.parseInt(String.valueOf(o2));
if(i>j)return1;
if(i<j)return-1;
return0;
}
}

Ⅱ Java:自定义一个顺序,然后对List按照该顺序排序。。

在Java中,如果你想对一个List按照自定义顺序进行排序,可以使用Collections.sort(List list, Comparator c)方法。这里的关键在于如何定义Comparator接口的具体实现,以适应你的排序需求。比如,如果你想根据字符串长度对字符串行表进行排序,你可以这样写:

Collections.sort(list, new Comparator() {
public int compare(String o1, String o2) {
int result = o1.length() - o2.length();
return result;
}
});

这里,我们定义了一个匿名内部类实现Comparator接口,并重写了compare方法。在compare方法中,我们比较了两个字符串的长度,如果o1的长度大于o2,则返回正数;如果o1的长度小于o2,则返回负数;如果两者长度相等,则返回0。注意,返回一个int值是必须的,它决定了排序的顺序。

同样,如果你想要根据字符串中特定字符的位置进行排序,例如按照第一个字符进行排序,你可以这样做:

Collections.sort(list, new Comparator() {
public int compare(String o1, String o2) {
int result = o1.charAt(0) - o2.charAt(0);
return result;
}
});

这里,我们比较了两个字符串的第一个字符,如果o1的第一个字符大于o2的第一个字符,则返回正数;如果小于,则返回负数;如果相等,则返回0。通过这种方式,你可以根据任何你需要的规则对列表进行排序。

总之,使用Collections.sort(List list, Comparator c)方法并自定义Comparator的compare方法,可以让你灵活地对任何类型的列表按照自定义规则进行排序,这在实际开发中非常有用。

Ⅲ 如何用java对字符串进行排序

importjava.util.*;
publicclassCharSort
{
privatestaticScannersc=newScanner(System.in);
privatestaticStringBuffersb=newStringBuffer();
publicstaticvoidmain(String[]args)
{
System.out.println(" ==========字符串排序!========== ");
init();
}//初始化!
privatestaticvoidinit()
{
System.out.println("请输入:");
for(;;)
{
Stringa=input();
char[]arr=a.toCharArray();
Arrays.sort(arr);
sb.append(a);
print(arr,sb);
}
}
//扫描!
privatestaticStringinput()
{
Stringa=sc.nextLine();
returna;
}
//打印!
privatestaticvoidprint(char[]arr,StringBuffersb)
{
System.out.println(" 字符串排序演示:");
for(inti=0;i<arr.length;i++)
{
System.out.print(arr[i]);
}
System.out.println(" ===================== 倒序演示:");
System.out.print(sb.reverse());

}
}

Ⅳ java语言建立一个班级学生姓名的字符串数组并进行排序

importjava.text.Collator;
importjava.util.Arrays;
importjava.util.Comparator;

publicclassNameSortDemo{
publicstaticvoidmain(String[]args){
String[]names={"孙小美","阿土伯","小明","钱夫人","小红","小菜"};
System.out.println("排序前:");
for(Stringname:names){
System.out.print(name+"");
}
System.out.println();

Comparatorcmp=Collator.getInstance(java.util.Locale.CHINA);//排序规则
Arrays.sort(names,cmp);//排序

System.out.println("排序后:");
for(Stringname:names){
System.out.print(name+"");
}
}
}

输出

排序前:
孙小美阿土伯小明钱夫人小红小菜
按拼音排序后:
阿土伯钱夫人孙小美小菜小红小明
阅读全文

与java中对字符串排序相关的资料

热点内容
明星谈如何缓解压力 浏览:141
androidlistview隐藏列 浏览:396
plc跑马灯编程 浏览:816
ios开发之网络编程 浏览:421
处理照片视频哪个app好 浏览:386
logback压缩 浏览:888
冰箱压缩机可以用气割吗 浏览:531
菜鸟如何加密商品信息 浏览:315
程序员那么可爱小说结局 浏览:866
zenity命令 浏览:570
监禁风暴哪个app有 浏览:871
程序员的爱心是什么 浏览:595
java中对字符串排序 浏览:296
单片机用数模转换生成三角波 浏览:640
外网怎么登陆服务器地址 浏览:140
什么人要懂编译原理 浏览:154
源码改单 浏览:719
pdfzip 浏览:881
压缩空气25兆帕会变成液体吗 浏览:56
linux测试服务器性能 浏览:956