2016-11-04 1 views
-2

私は必要以上のものを含むイテレータの問題が範囲外のエラーを出していますか?Javaのchar同時発生を探しています

while ((x< palabra1.length())||(anagrama)){ 
     lletra1 = palabra1.charAt(x); 
     x++; 
     anagrama = false; 
     for(int i = 0; i< palabra2.length();i++){ 
      lletra2 = palabra2.charAt(i); 
      System.out.println(i); 
      if (lletra1 == lletra2){ 
       anagrama = true; 
      } 
     } 

答えて

1

(x < palabra1.length() && anagrama)を意味しないのですか? (私は純粋な歩兵のために不要なカッコを削除しました)。

現在、||オペレータは、anagramatrueの場合、長さチェックを効果的に迂回します。

あなたのIDEは非常にとなっています。

+0

前回と同じように、長さチェックをバイパスしません。しかし、それはORなので、条件全体が真であるためには、オペランドのうちの1つだけが真である必要があります。 –

+0

いくつかの尊厳を救済するために効果的に*スニークします。そして、それを二重にすることを回避する*。 – Bathsheba

+0

さて、事実上、それはそれをバイパスしません。このメソッドをnullのpalabra1で呼び出すと、NullPointerExceptionが発生するため、効果的にバイパスしないことがわかります。 –

関連する問題