C# 在Java中复制.NET排序

C# 在Java中复制.NET排序,c#,java,.net,sorting,locale,C#,Java,.net,Sorting,Locale,我想在Java中复制以下简单方法: string[] a = {"u1=1","u2=2","u11=3"}; Array.Sort(a); Console.WriteLine(String.Join(" ", a)); 输出: u1=1 u11=3 u2=2 此的朴素Java翻译使用另一个字符串比较: String[] a = {"u1=1", "u2=2", "u11=3"}; Arrays.sort(a); System.out.println(Arrays.toString(a));

我想在Java中复制以下简单方法:

string[] a = {"u1=1","u2=2","u11=3"};
Array.Sort(a);
Console.WriteLine(String.Join(" ", a));
输出:

u1=1 u11=3 u2=2

此的朴素Java翻译使用另一个字符串比较:

String[] a = {"u1=1", "u2=2", "u11=3"};
Arrays.sort(a);
System.out.println(Arrays.toString(a));
输出:

[u11=3,u1=1,u2=2]

我意识到.NET
String.Compare()
方法取决于机器上的本地化设置,但如何使用Java在标准英语语言环境中重现.NET排序?

这应该可以:

String[] a = {"u1=1", "u2=2", "u11=3"};
Arrays.sort(a, Collator.getInstance(Locale.ENGLISH));
System.out.println(Arrays.toString(a));
输出:

[u1=1,u11=3,u2=2]

这应该起作用:

String[] a = {"u1=1", "u2=2", "u11=3"};
Arrays.sort(a, Collator.getInstance(Locale.ENGLISH));
System.out.println(Arrays.toString(a));
输出:

[u1=1,u11=3,u2=2]


当然,我在贴出问题后4分钟就自己想出了答案。相关的问题帮了我的忙,把我引向了Collator班。当然,我在贴出问题后的4分钟内自己找到了答案。相关的问题帮了我的忙,把我引向了学院的班级。