Допустим, у меня есть две одинаковые строки внутри ArrayList ... есть ли способ проверить это?Также есть ли способ проверить, сколько раз строка с одинаковым значением находится в ArrayList?
Итак, допустим, у меня есть следующая строка ArrayString.
os.println(itemIDdropped + "|" + spawnX + "|" + spawnY + "|" + currentMap + "|drop|" + me.getUsername());
1. 1|3|5|1|drop|Dan
2. 2|5|7|2|drop|Luke
3. 1|3|5|2|drop|Dan
4. 3|3|5|1|drop|Sally
Вот чтоцифры / буквы означают для 1-4 строк ... идентификатор элемента, X pos, Y pos, Map on on, команда drop, пользователь, который его отбросил
Тогда, скажем, я разделил это, выполнив это:
String[] itemGrnd = serverItems.get(i).split("\\|");
Теперь, скажем, у меня есть цикл for, подобный этому:
for (int i = 0; x < serverItems.size(); i++) {
System.out.println(serverItems.get(i));
}
Я хочу найти где X, Y и Map или в этом случае itemGrnd [1], itemGrnd [2] и itemGrnd [3] совпадают с ЛЮБОЙ другой строкой в ArrayList, которую я нашел с помощью serverItems.get (i).
И если МЫ НАШЕМ НАХОДИМ ... (который вПриведенный выше пример ... x, y и map одинаковы для 1 и 4 ... затем создайте IF, чтобы сделать это ОДНАЖДЫ ... потому что я не хочу этого делать: (Кстати, я делаюследите за моими переменными на стороне клиента, так что не беспокойтесь об этом. Да, я знаю, что они называются spawnX и spawnY ... это просто текущий X, Y.
if (spawnX.equals(Integer.parseInt(itemGrnd[1])) &&
spawnY.equals(Integer.parseInt(itemGrnd[2])) &&
currentMap.equals(Integer.parseInt(itemGrnd[3]))) {
}
Теперь, если мыЧтобы сделать это .... 1 и 4 были обработаны здесь.Я хочу сделать это ТОЛЬКО ОДНАЖДЫ .. ВСЕГДА, если мы найдем несколько строк (например, 1 и 4)
Спасибо