Я храню объекты Integer, представляющие индекс объектов, которые я хочу отслеживать. Позже в моем коде я хочу проверить, соответствует ли индекс конкретного объекта одному из тех целых чисел, которые я сохранил ранее. Я делаю это, создавая ArrayList и создавая новый Integer из индекса цикла for:
ArrayList<Integer> courseselectItems = new ArrayList();
//Find the course elements that are within a courseselect element and add their indicies to the ArrayList
for(int i=0; i<numberElementsInNodeList; i++) {
if (nodeList.item(i).getParentNode().getNodeName().equals("courseselect")) {
courseselectItems.add(new Integer(i));
}
}
Затем я хочу проверить позже, содержит ли ArrayList определенный индекс:
//Cycle through the namedNodeMap array to find each of the course codes
for(int i=0; i<numberElementsInNodeList; i++) {
if(!courseselectItems.contains(new Integer(i))) {
//Do Stuff
}
}
Мой вопрос: когда я создам новое целое число, используя new Integer(i)
, смогу ли я сравнивать целые числа, используя ArrayList.contains()
? То есть, когда я создаю новый объект, используя new Integer(i)
, будет ли он таким же, как ранее созданный объект Integer, если значение int, используемое для их создания, одинаково?
Надеюсь, я не сделал это слишком неясным. Спасибо за помощь!