我有一个字符串列表
Dim myList as new List(Of String)
1.7
1.8
1.9
1.10
1.10.1.1
1.10.1.2
1.10.1.3
1.7.1.1
1.7.1.2
1.7.1.3
1.7.1.4
我想订购它们
1.7
1.7.1.1
1.7.1.2
1.7.1.3
1.7.1.4
1.8
1.9
1.10
1.10.1.1
1.10.1.2
1.10.1.3
使用
myList.Sort( comparer here? )
如何编写简单的比较器函数?
答案 0 :(得分:2)
为了节省一些工作,您还可以使用Version而不是String:
Dim versions As New List(Of Version) From {New Version("1.7"),
New Version("1.8"),
New Version("1.9"),
New Version("1.10"),
New Version("1.10.1.1"),
New Version("1.10.1.2"),
New Version("1.10.1.3"),
New Version("1.7.1.1"),
New Version("1.7.1.2"),
New Version("1.7.1.3"),
New Version("1.7.1.4")}
versions.Sort()
For Each v As Version In versions
Console.WriteLine(v.ToString)
Next
答案 1 :(得分:0)
Collections.sort(myList, new Comparator<String>(){
public int compare(String str1, String str2) {
return str1.compareTo(str2);
}
});
或
Collections.sort(myList, (String str1, String str2) -> {return str1.compareTo(str2);}); //java 8