проверка всего ArrayList в Java - PullRequest
2 голосов
/ 14 февраля 2011

У меня есть простая идея, но я не уверен, как правильно ее реализовать ... Вот предложение:

Скажем, есть ArrayList с именем myList размера 5, а затем есть Integerназывается testNumber.Значения внутри myList и / или testNumber не имеют значения.

Что мне нужно сделать, это сравнить переменную testNumber с каждым из целых чисел myList и, если testNumber не равен ни одному из них, выполнить операцию (т.е. System.out.println("hi");).

Как я должен идти об этом ..?

Ответы [ 2 ]

4 голосов
/ 14 февраля 2011

ArrayList имеет метод с именем contains () , подходящий для этой задачи:

Возвращает true, если этот список содержит указанный элемент. Более формально, возвращает true, если и только если этот список содержит хотя бы один элемент е такой что (o == ноль? e == ноль: o.equals (е)).

Вы можете использовать его следующим образом:

if(!myList.contains(testNumber)) {
   PerformOperation();
}
3 голосов
/ 14 февраля 2011

Вы просто делаете

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);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...