2012-03-04 7 views
0

for文内にif...else文を入れるにはどうすればよいですか?for文にif文、else文を入れる方法

これはコードです:

// This is within a actionListener. When ever I press a button, this happens. 
for (int i = 0; i < booleanVariable.length; i++) { 
    //length is 8 
    System.out.println("booleanVariable is" + booelanVariable[i]); 
    if (booleanVariable[i] = true) { 
     booleanVariable[i] = false; 
     System.out.println("booleanVariable was true") 
     break; 
    } else { 
     System.out.println(" booleanVariable is false"); 
    } 
} 

はこれが3機以上の出力である:

booleanVariable is true 
booleanVariable was true 
//correct  


booleanVariable is false 
booleanVariable was true 
//incorrect.  

booleanVariable is false 
booleanVariable was true 
//incorrect 

これはbooleanVariableがfalseの場合でも、何らかの理由で、出力言うが本当であることを意味しこれは偽です。私が見つけた何

  • break;書がなければ、プログラムはbreakときと全く同じ全8回出力、唯一の誤った値別の5回の周りに行きます。それ以外の他の
  • 用内ながら内

    • (絶望のうちの)場合はtrueからfalseに変更する場合、
    • 場合:
    • 私が試した何

    大文字と小文字のスイッチ

通常はスイッチを使用しますが、ブーリアンを使用していますが、ブーリアンは動作しませんスイッチ。

誰かが答えを知っていれば、私は永遠に感謝しています。ありがとう。

+3

あなたの答えに感謝していますが、何かを追加しない限り、答えを出す前に男と全く同じことに答えないでください。 – Russell

答えて

5
あなたは比較のために ==演算子を使用する必要が

if (booleanVariable[i] == true) { 

にご

if (booleanVariable[i] = true) { 

を変更

。 1つの=は、常にtrueを返すtrueに値を設定します。

if (booleanVariable[i]) { 
+0

あなたは私を冗談にしています。 1文字が欠けていて、コードが乱れてしまった。 1000000000私から、ありがとう、そして10分後、受け入れてくれてありがとう。 – Russell

5

あなたの問題は、このラインであってもよい:あなたは値をtrueに設定しようとしている場合を除き

if (booleanVariable[i] = true) {

ブール比較は、==を使用する必要があります。いずれにせよ、この行は常に真と評価されます。また

注意あなたが本当にtrueに比較する必要がないことを、あなたは、単にような何かを言うことができます。値がtrueの場合、コードブロックが入力されますので、

if (booleanVariable[i]) {

を、それがある場合falseの場合、elseの場合に進みます。

4

値を比較するには、==を使用する必要があります。代入演算子は常に

if (booleanVariable[i] == true) 
2

if (booleanVariable[i])代わりのif (booleanVariable[i] = true) .... = trueになりますのでゆうが変数への真の価値をasigns =を使用している...あなたも==代わり

3

を使用することができます

あなたはている変数への真のを割り当てることがたびに、真の出力だ理由です、 - if文に誤りがあります。 ==(等しい)=(割り当てない)である必要があります。

2

if(booleanVariable [i] = true)をif(booleanVariable [i] == true)のように変更する必要があります。 には、 '='の代わりに '=='が必要です。