我有一個Class
被稱爲Mineral
和其他類擴展這一個,如Gold
,Iron
和Coal
。Switch a SuperClass
我想開關一個Mineral
類,以找出哪些礦物一直通過以下addMineral
方法傳遞:
public List<Mineral> addMineral(Mineral mineral, int amount){
switch (mineral){
case Gold:
break;
}
}
但我不知道如何插入擴展Mineral的類作爲例子。事實上上面的例子不起作用。
這是可以實現的嗎?這是正確的方式還是有更好的解決方案?
不能使用對象使用開關,除了字符串。這種補充將在未來通過模式匹配提供給Java。看到這裏:(https://youtu.be/e9eSPtpiGkA) – Logan
'if(Mineral instanceof Gold){...} else if(Mineral instanceof ...' – EpicPandaForce
你需要用'if'來檢查它,例如:'if(mineral instanceof Gold){...}' –