также переместить элемент из одного ArrayList к другим вы можете сделать что-то вроде этого:
ArrayList<SomeClass> firstList;
ArrayList<SomeClass> secondList;
int randomlySelectedIndex; //initialize this to be random
SomeClass element = firstList.get(randomlySelectedIndex);
firstList.remove(randomlySelectedIndex);
secondList.add(randomlySelectedIndex);
Как для сравнения элементов из 2-х списков, вы могли бы сделать сравнение метода следующим образом:
int compare(SomeClass first, SomeClass second) {
//return 0, 1 or -1 depending on your criteria of how first relates to second
}
, а затем использовать метод сравнения при переборе с помощью списков
int result;
for(int x = 0; x < firstList.size(); x++) {
for(int y = 0; y < secondList.size(); y++) {
result = compare(firstList.get(x), secondList.get(y));
if(result == 0) {
//do stuff
}
else if(result < 0) {
//do stuff
}
else {
//do stuff
}
}
}
обратите внимание, что вы не должны добавлять или удалять элементы из любого из arraylists из двух циклов, если вы не знаете последствий этого.
Удалены MISC комментаторской – Dan