Closed. This question needs details or clarity。它当前不接受答案。
                        
                    
                
            
        
            
        
                
                    
                
            
                
                    想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
                
                    2年前关闭。
            
        

    

我正在编写一个手工艺品插件,需要检查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在您的情况下是ItemStack对象。因此,如果要检查项目的类型是否相等,则必须编写:

    if(e.getInventory().getResult().getType().equals(its.getType())) {
      //code here
    }


或者,如果您要像帖子中那样进行比较,则必须比较ItemStack对象,因为不能将ItemStack对象与Material进行比较。然后,您必须编写如下内容:

    if(e.getInventory().gtResult().equals(its)) {
      //code here
    }

10-08 19:43