2016-02-25 68 views
0

我的for循環忽略發現場,發現==真,即使賬面上:的Java:for循環忽略條件

public int getDownYEntities() { 
    int loc = 16; 
    boolean found = false; 
    EntityType eCheck; 
    for (int col = locY; col < 17 || !found; col++) { 
     eCheck = level[locX][col]; 
     System.out.println("Called"); 
     if ((eCheck == EntityType.ROCK) || (eCheck == EntityType.BOULDER) || (eCheck == EntityType.KEY) || (eCheck == EntityType.EXIT)) { 
      switch (eCheck) { 
       case ROCK: 
        loc = col - 2; 
        found = true; 
        break; 
       case BOULDER: 
        loc = col - 2; 
        found = true; 
        System.out.println("Test1"); 
        System.out.println(found); 
        break; 
       case KEY: 
        loc = col - 2; 
        found = true; 
        break; 
       case EXIT: 
        loc = col - 1; 
        found = true; 
        break; 
      } 
     } 
     else 
     { 
      loc = col-1; 
     } 
    } 
    return loc; 
} 

登錄:

I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Test1 
I/System.out: true 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 
I/System.out: Called 

我是不是一個完整的白癡或者其他的東西?

回答

6
col < 17 && !found 

你想「和」,而不是「或」。

+0

哇,我的壞,傻我。 – Nikz11