以下是我尝试编写的方法的开头。但java不喜欢我使用Arrays.sort
方法
它说我有一个,
不兼容类型:必需int [],发现无效。
谁能看到我哪里出错了?
static String [] findSpace(int lengthOfName1, int lengthOfName2, int lengthOfName3){
String [] space = {":", ":", ":"};
int [] lengthOfName = {0,0,0};
int [] lengthOfNameSorted = {0, 0, 0};
lengthOfName[0] = lengthOfName1; lengthOfName[1] = lengthOfName2; lengthOfName[2] = lengthOfName3;
lengthOfNameSorted = Arrays.sort(lengthOfName);
答案 0 :(得分:1)
Arrays.sort()返回void。它就地对阵列进行排序,从而破坏了初始顺序。
确保这就是你需要的。
您可以使用
int[] lengthOfNameSorted = Arrays.copyOf(lengthOfName, lengthOfName.length);
Arrays.sort(lengthOfNameSorted);
如果你真的需要一个数组的排序副本。
我通常更喜欢使用
IntStream.of(lengthOfName).sorted().boxed().collect(Collectors.toList());
除非列表太大,否则拳击的内存和性能开销不可忽略。
答案 1 :(得分:1)