У меня есть Class
под названием Mineral
и другие классы, которые распространяют этот, например Gold
, Iron
и Coal
.Переключатель SuperClass
Я пытаюсь переключательMineral
класса, для того, чтобы выяснить, какие минеральный было прошло по следующей addMineral
методы:
public List<Mineral> addMineral(Mineral mineral, int amount){
switch (mineral){
case Gold:
break;
}
}
Но я не знаю, как для вставки классов, которые расширяют Минерал как случаи. На самом деле приведенный выше пример не работает.
Возможно ли это? Правильно ли это или есть лучшее решение?
Вы не можете использовать переключатель с объектами, за исключением String. Это дополнение подходит для Java в будущем с помощью Match Matching. См. Здесь: (https://youtu.be/e9eSPtpiGkA) – Logan
'if (Mineral instanceof Gold) {...} else if (Mineral instanceof ...' – EpicPandaForce
вам нужно проверить его с помощью 'if', например : 'if (mineral instanceof Gold) {...}' –