由於某些原因,我的方法中的所有for-each
循環都被完全忽略,我無法弄清楚原因。這裏是我的代碼:對於每個循環都不執行
private static boolean notUsed(ArrayList<Integer> check, ArrayList<ArrayList<Integer>> used)
{
boolean c1 = false;
boolean c2 = true;
for (ArrayList<Integer> item : used) // Not executed
{
System.out.println("It works!");
Collections.sort(item);
Collections.sort(check);
if (check.equals(item)) c1 = true;
}
ArrayList<Integer> existing = new ArrayList<Integer>();
for (int item : check)
{
for (int exists : existing) // Not executed
{
if (exists == item)
{
c2 = false;
break;
}
else existing.add(item);
}
if (c2 == false) break;
}
if (c1 && c2) return true;
else return false;
}
我已經持續了它在過去的15分鐘,看不出爲什麼代碼拒絕與循環的內容費心。事實上,我甚至都不知道java可以在現在之前避免執行循環。我錯過了明顯的東西嗎?
您是否嘗試過在你的foreach循環變化的int整數?它們是有區別的。一個是原始的,一個是對象,所以這可能是你的問題。 – 2013-02-17 03:21:39
ArrayList的大小是多少? – afrischke 2013-02-17 03:22:23
當你說(ArrayList項目:使用)//未執行 –
smk
2013-02-17 03:23:18