java按字母顺序对字符串数组中的单个元素进行排序
我必须编写一个程序,从文件中读取字典单词列表。 随后,每个单词的字符按字母顺序排列并存储在原始数组中。(例如:蝙蝠侠将成为aabmnt)。 现在,以下是我到目前为止所做的:
public static String[] alphabeticalOrder(String[] s)
{
//
// Sort each individual string element by alphabetical order
//
for (int i = 0; i < s.length; i++)
{
String wordSt = s[i];
char[] word = wordSt.toCharArray();
Arrays.sort(word);
s[i] = new String(word);
}
return s;
}
main中的调用只是:String[] alphaOrder = alphabeticalOrder(dictionary);
然而,每当我运行这个程序时,我都会得到一个NullPointerException
,我似乎不知道为什么
将s[i]
更改为s[0]
使我跳过了错误,但我需要转换字符串中的所有元素,而不仅仅是第一个元素
出什么事了
# 1 楼答案
正如Zavior所评论的,只有当字符串数组中有空元素时,才会发生这种情况
将代码更改为: