我正在编写一个制作插件,我需要检查是否 getResult().GetType()
等于ItemStack
,但是getType()
可能不接受ItemStack
.
ItemStack its = new ItemStack(Material.getMaterial(s.getInt("item")),
1, (byte) s.getInt("data"));
if(e.getInventory().getResult().getType().equals(its)) { //this don't work
最佳答案
它不会工作,因为e.getInventory().getResult().getType()
返回Material
对象和its
在你的case 是 ItemStack
对象。因此,如果您想检查项目的类型是否相等,则必须编写:
if(e.getInventory().getResult().getType().equals(its.getType())) {
//code here
}
或者,如果您想像您在帖子中介绍的那样进行比较,则必须比较 ItemStack
对象,因为您无法将 ItemStack
对象与 Material
一。然后你必须写这样的东西:
if(e.getInventory().gtResult().equals(its)) {
//code here
}
关于java - GetType 不接受 itemStack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49838722/