我應該比較一個arraylist(字符串)中的字符,然後如果所有的字符串都有共同的字符或字符或沒有共同的字符,我必須顯示常見的數量一個數組列表中所有字符串中的字符。 這裏是我的功能:比較一個數組中的字符串元素造成indexoutofboundsexception
public void theElementor(ArrayList<String> x) {
char a;
ArrayList<String> store = new ArrayList<String>();
for (int i = 0; i <= x.size(); i++) {
for (int j = x.size()-1; j > i; j--) {
for (int l = 0; l < x.get(j).length(); l++) { \\error here
if (x.get(i).contains(
Character.toString(x.get(j).charAt(l)))) {
a = x.get(j).charAt(l);
store.add(Character.toString(a));
}
}
}
}
for (String element : store) {
System.out.println(element);
}
}
我想通了很多,我不再讓早些時候,我得到的錯誤,但依然沒能得到char或字符常見的所有字符串我輸入。
如果'詮釋J = x.size()''然後x.get(J)'將產生錯誤。您需要從size - 1開始。 – 2014-09-12 21:57:32
這一行有點奇怪:'x.remove(j).charAt(l);'。你爲什麼在你剛刪除的條目上做'charAt',然後不使用這個值? – 2014-09-12 22:00:48
@HotLicks我剛剛試過它,現在我得到同樣的錯誤,當第三次循環運行,如果語句成立。 – 2014-09-12 22:02:13