1不是== 1,布尔问题

时间:2013-04-29 04:47:33

标签: java boolean

我是疯了还是什么,或者我是否需要更多的睡眠......可以留下第二眼吗?

boolean slotTypeMatch = false;
System.out.println("waiType: " + waiType);
if (waiType.equals("W")){

} else if(waiType.equals("A")){
    itemFilename = MyServer.armorMap.get(waiId).getFilename();
    System.out.println("endContainerSlot: " + endContainerSlot + ", getSlot: " + MyServer.weaponMap.get(waiId).getSlot());
    if (endContainerSlot == MyServer.armorMap.get(waiId).getSlot()){
        System.out.println("WHY DONT I MAKE IT HERE!!!!");
        slotTypeMatch = true;
    }
}
System.out.println("itemFilename: " + itemFilename);
System.out.println("slotTypeMatch: " + slotTypeMatch);
if (slotTypeMatch){
    //not making it here, I must be going insane

这是我的控制台输出......我无法想象我的生活......

waiType: A 
endContainerSlot: 1, getSlot: 1
itemFilename: images/armor/armor_tunic.png 
slotTypeMatch: false

编辑它们都是int

int endContainerSlot - com.jayavon.game.server.MyCommandHandler.run()
int com.jayavon.game.actualgame.Armor.getSlot()

3 个答案:

答案 0 :(得分:6)

您输出MyServer.weaponMap,但您要将endContainerSlotMyServer.armorMap进行比较。 我想您想要与weaponMap进行比较,或者您正在进行正确的比较,但在输出中查看错误的地图。

答案 1 :(得分:3)

System.out.println("endContainerSlot: " + endContainerSlot + ", getSlot: " + MyServer.weaponMap.get(waiId).getSlot());
if (endContainerSlot == MyServer.armorMap.get(waiId).getSlot()){
    System.out.println("WHY DONT I MAKE IT HERE!!!!");
    slotTypeMatch = true;
}

你在这里比较不同的地图,armorMap和weaponMap,我认为那是你的问题......

答案 2 :(得分:3)

MyServer.armorMap& MyServer.weaponMap是不同的。我认为你应该更新你的代码并获得一些睡眠。 :)

if (endContainerSlot == MyServer.weaponMap.get(waiId).getSlot()){...}