我有我的腦海裏一個簡單的想法,但我不知道如何實現它正確...... 這裏的交易:檢查整個ArrayList中Java中
說有一個叫myList中尺寸5的ArrayList和那麼存在一個名爲testNumber的Integer 。 myList和/或testNumber中的值是不相關的。
我需要做的是比較各myList中的整數 的testNumber變量,如果testNumber不等於他們沒有,然後執行操作(即System.out.println("hi");
)。
我應該怎麼辦呢?
我有我的腦海裏一個簡單的想法,但我不知道如何實現它正確...... 這裏的交易:檢查整個ArrayList中Java中
說有一個叫myList中尺寸5的ArrayList和那麼存在一個名爲testNumber的Integer 。 myList和/或testNumber中的值是不相關的。
我需要做的是比較各myList中的整數 的testNumber變量,如果testNumber不等於他們沒有,然後執行操作(即System.out.println("hi");
)。
我應該怎麼辦呢?
你根本
if (!myList.contains(testNumber))
System.out.println("no element equals " + testNumber);
嚴格地說,這可能不「每個元素比較testNumber
」。所以,如果你在每個元素進行比較的「手工」的方式實際上有興趣,這裏是如何:
boolean found = false;
for (int i : myList) {
if (i == testNumber)
found = true;
}
if (!found)
System.out.println("no element equals " + testNumber);
ArrayList中有一個名爲contains()方法,該方法適用於這個任務:
返回true如果此列表包含 指定的元素。更正式地, 返回true當且僅當該列表 包含至少一個元素,例如(o == null?e == null: o.equals(e))。
您可以用它如下:
if(!myList.contains(testNumber)) {
PerformOperation();
}
不要寫`... == false`,寫`! ...`。對於布爾型,只有當雙方都不是常量時,`==`和`!=`纔是明智的。 – 2011-02-13 23:15:11
事實上,`contains`方法,直到一個合適的一個被找到的每個元素進行比較。 (它使用equals方法而不是`==`,)。 – 2011-02-13 23:13:09