Войти или зарегистрироваться

Помогите Список и блоки

Статус
Закрыто для дальнейших ответов.

Invokers

Новичок
Пользователь
Баллы
6
Доброе время, для мини игры хочу сделать список в котором есть определённый материал блоков который можно ломать, подумал что можно сделать какой-нибудь лист с этими материалами и потом сравнивать а дальше уже моё дело.

Код:
public void AllowBlock(Material material) {

if (material == Material.WOOD) {
 //Тут что-то дальше на своё усмотрение
}

}

но думаю что можно сделать так, но проверять по over++ материалов эт лишнее дело

Как оформить это в виде листа и потом проверять
 
Код:
List<Material> ALLOWED = List.of(Material.WOOD, Material.DIAMOND_BLOCK, ...);

if (ALLOWED.contains(material)) {//разрешено}
 
Используй EnumSet.
PHP:
private static final Set<Material> ALLOWED_MATERIALS = EnumSet.of(Material.WOOD, Material.DIRT);
// ...
if (ALLOWED_MATERIALS.contains(type)) {
    // TODO
}

udp: Производительнее List из ответа выше, просто потому что не проверяет каждый материал за материалом, а находит нужный сразу.
 
Используй EnumSet.
PHP:
private static final Set<Material> ALLOWED_MATERIALS = EnumSet.of(Material.WOOD, Material.DIRT);
// ...
if (ALLOWED_MATERIALS.contains(type)) {
    // TODO
}

udp: Производительнее List из ответа выше, просто потому что не проверяет каждый материал за материалом, а находит нужный сразу.
Воспользуюсь твоим способом ибо на List.of(...) сильно ругается
 
Воспользуюсь твоим способом ибо на List.of(...) сильно ругается
Скорее всего потому что на Java 8 пишешь? List.of добавили в 9. Не говорю про 17, но советовал хотя бы на 11 перейти.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх