Помогите Как сравнить два arraylist разных типов?

  • Автор темы Автор темы ZONCCK
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

ZONCCK

Активный участник
Пользователь
Баллы
78
Имя в Minecraft
ZONCCK
Вкратце, есть таблица в бд, состоящая из двух столбцов username и message. Плагин должен взять все записи, далее взять список игроков онлайн, и если есть пересечения этих массивов(игрок есть и на сервере, и запись к нему имеется), то ему отправляется сообщение с текстом message. Я не знаю, как реализовать сравнение этих двух массивов, ведь они разных типов :( (В Java новичок)
 
Java:
for(String s : HashMap.keySet()) {
if(Player.getName().equalsIgnoreCase(s)) {
p.sendMessage(HashMap.get(Player.getName());
}
}
Писал от руки, могут быть ошибки.
Ещё можно так

Java:
String nick = null;
for(String s : nicknames.keySet()){
    nick = nick + " " + s;
}
for(Player p : Bukkit.getOnlinePlayers()){
  
if(nick.contains(p.getName().toLowerCase())){
    //TODO
}
}
 
Последнее редактирование:
for(String s : HashMap.keySet()) {
if(Player.getName().equalsIgnoreCase(s)) {
p.sendMessage(HashMap.get(Player.getName());
}
}
Писал от руки, могут быть ошибки.
Можешь расписать, что ты сделал? Мне не понятна первая строчка.
 
Помещаешь все записи из базы в HashMap, где ключ - ник игрока, а значение - сообщение.
Ну а потом перебираешь Bukkit.getOnlinePlayers() и пытаешься достать из HashMap сообщение по нику игрока.
Спасибо, а можешь скинуть понятную статью про HashMap на русском?
 
Заносить данные из бд в хешмап надо циклом, или есть какой-то другой способ? Сори за 'нубские' вопросы, хочется разобраться чтоб прям раз и навсегда :nerd:
 
Спасибо, отпишусьо результате :)
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх