Iva*_*aNs 0 java sorting collections
我是 Java 的初学者。我不明白为什么这段代码不能正常工作。我糊涂了。有人可以解释为什么。这是我的代码:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
public class HW20 {
public static ArrayList<String> abc(String ... strings) {
ArrayList<String> strings1 = new ArrayList<>(Arrays.asList(strings));
Collections.sort(strings1);
return strings1;
}
public static void main(String[] args) {
ArrayList<String> strings1 = abc("1", "9", "4", " 2", "6", "8", "3", "5", "7", "0");
System.out.println(strings1);
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
[ 2, 0, 1, 3, 4, 5, 6, 7, 8, 9]
Run Code Online (Sandbox Code Playgroud)
谢谢!
请注意,字符串中有一个空格字符" 2"。这意味着当字符串被比较时,由于空格的 ASCII 代码低于任何其他数字的 ASCII 代码," 2"将比所有其他字符串都少,这就是它首先出现的原因。删除该空格字符将导致字符串以(按字典顺序)排序的顺序返回。