Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 按字母顺序然后按数字顺序排序元素_Java_Sorting - Fatal编程技术网

Java 按字母顺序然后按数字顺序排序元素

Java 按字母顺序然后按数字顺序排序元素,java,sorting,Java,Sorting,快速提问,假设我有一个由主机名或IP组成的节点列表/集合。我现在想按字母顺序对它们排序,然后按数字排序,所以考虑使用.sort()调用是正确的方法吗 只需实现一个Comperator并使用Arrays.sort(),就像您假设的那样,您可以创建一个类 class Foo { int no; String val; } 及 Collections.sort(listOfFoo,newcomparator(){public int compare(Foo f1,Foo f2){ //你的逻辑是这样

快速提问,假设我有一个由主机名或IP组成的节点列表/集合。我现在想按字母顺序对它们排序,然后按数字排序,所以考虑使用.sort()调用是正确的方法吗

只需实现一个
Comperator
并使用
Arrays.sort()
,就像您假设的那样,您可以创建一个类

class Foo {
int no;
String val;
}

Collections.sort(listOfFoo,newcomparator(){public int compare(Foo f1,Foo f2){
//你的逻辑是这样的
}});

如果节点实现了
java.lang.Compariable
,则可以定义自定义排序。如果无法更改/修改节点类,则可以实现
java.util.Comparator
,并使用
Collection.sort(列表,comparators不应该是compare()而不是compareTo())?@amit,yes混淆了
Compariable
和Thisheers for help,只需使用call将arraylist重构为排序列表。>listname.SortedArray();Cheers for help,只需使用call将arraylist重构为排序列表。>listname.SortedArray();
Collections.sort(listOfFoo,new Comparator<Foo>(){public int compare(Foo f1, Foo f2){
//your logic goes here
}});