这是我大学的Java,所以这里有一些你可能不知道的组件。不要注意它们,因为它们不是问题。
我的编译器让我将数组初始化为null。然后我尝试运行我的程序的其余部分,它说它应该使用一个具有实际值的数组。我的问题是我应该怎么做呢?
private static String[] alphabetSort(Map<String, Integer> mapWord) {
String[] ordered = null;
Map<String, Integer> copy = mapWord;
for (int i = 0; i < copy.size(); i++) {
Map.Pair<String, Integer> pair = copy.removeAny();
String key = pair.key();
ordered[i] = key;
}
boolean flag = true;
String temp;
while (flag) {
flag = false;
for (int j = 0; j < ordered.length; j++) {
String test1 = ordered[j];
String test2 = ordered[j + 1];
if (test1.compareTo(test2) < 0) {
temp = ordered[j];
ordered[j] = ordered[j + 1];
ordered[j + 1] = temp;
flag = true;
}
}
}
return ordered;
}
答案 0 :(得分:0)
数组固定大小。您必须在创建时选择尺寸。
尝试:
String[] ordered = new String[mapWord.size()];