2016-07-19 23 views
1

Ich baue die 8-Puzzle-Klasse und bin ein wenig rostig auf den binären Operatoren, und bekomme einen "schlechten Operand Typen für binären Operator '& &'". Hier ist mein Code:8 puzzle java: binärer operator

public boolean checkReachable(int [] goalState) 
{ 
    int iversionCount = 0; 
    for(int i = 0; i<9 -1; i++) 
     for(int j = i+1; j<9; j++) 
      if(goalState[j] && goalState[i] && goalState[i] > goalState[j]) 
      { 
       iversionCount++; 
      } 
} 
+2

Was genau wollen Sie überprüfen? – Zircon

+1

Bitweise Operatoren sind nett, aber ich denke, dass es besser ist, ohne sie lesbar zu sein. – 4castle

Antwort

2

&& für booleans ist nur. Wenn Sie bitweise arbeiten möchten und eine einzelne & verwenden.

+4

Um, ein bitweises oder ist '|', nicht '&' – 4castle

+0

@ 4castle: Danke. Ich wollte sagen "und". Ich habe meine Antwort entsprechend aktualisiert. – recursive

+0

Ich war verwirrt mit der Logik und ließ auch einiges aus. Ich wollte sagen: if (goalState [j]! = 0 && goalState [i]! = 0 && goalState [i]> goalState [j]) – sschucktown

Verwandte Themen