public static void harcos1csapatbaHelyez()
{
for (int i=0 ; i<7 ; i++)
{
if (ElsoJatekos.elsoJatekosCsapata[i] == 0)
{
ElsoJatekos.elsoJatekosCsapata[i] = 1;
break; //If i dont remove it, it will cause a dead code warning and the for loop will be execute just once! How can I jump out from this loop otherwise?
}
else
{
System.out.println("Elérted a maximális csapatlétszámot!");
break;
}
}
}
答えて
問題はあなたがbreak
を持っているのではなく、という2つのがあるということです。 break
は両方とも条件付きif
ステートメントの反対側のブランチにあり、無条件でbreak
になります。 if
のコードに関係なく、末尾にbreak
があります。
これは、ループヘッダーからのi++
ステートメントが決して実行されないことを意味します。あなたのデッドコードです。
あなたは私の人生を救ったよね、二回目の休憩は不必要だった。おかげさまで多くの人に謝ってくれてありがとう:D –
@FrigyesVass申し訳ありませんが、これはまったく分かりません。 Javaコンパイラは、それを理解するために多くの分析を使用します。あなたのプロジェクトに幸運を祈る! – dasblinkenlight
i++
が実行されることはありません。ループ内のbreak
は、「すぐにループを離れる」ことを意味します。あなたのif
/else
の両方枝はそれを持っているので、最初の反復では、ループの外休憩の両方、およびfor
のi++
一部は実行する機会を得ることはありません。 for
ループの場合は、単にint i = 0;
となります。ループするつもりがない場合は、現在ループ本体にあるコード(break;
なし)が続きます。
おそらく、あなたは理由のためにループしており、たかだかのブロックのうちはbreak
である必要があります。
ありがとうございました! –
forループとのif-elseその中にこれを持ってあなたのコードが不完全であるが、問題になっているが、ここで私はまだ識別することができます... ...
あなたは慎重に見ている場合がありその中に独特の何かが、他の場合:条件は、これが真である場合、または
はどんなにを意味する...あなたはループを破るが、条件が満たされない場合は、あまりにもループを破る満たされた場合
not ElsoJatekos.elsoJatekosCsapata[i] == 0
あなたがループしてになった場合、他のデッドコードの後に書かれているALLを...
あなたが実行されることはありませんが解除されます... IDEを把握するのに十分なスマートです...その
IDEが文句を言っている理由である....
public static void harcos1csapatbaHelyez()
{
for (int i = 0; i < 7; i++) {
if (ElsoJatekos.elsoJatekosCsapata[i] == 0) {
ElsoJatekos.elsoJatekosCsapata[i] = 1;
break;
} else {
System.out.println("Elérted a maximális csapatlétszámot!");
break;
}
//
// something else here that is dead-code
}
}
- 1. 明示的なブールテストでデッドコード警告が表示されるのはなぜですか?
- 2. forループが終了した後にローカル変数が表示され、アクセスできるのはなぜですか?
- 3. whileループがあるとダイアログのフラグメントが表示されない
- 4. forループの値が200になるのはなぜですか?
- 5. forループを集計する際にエラーメッセージが表示される
- 6. テンプレートでデッドコードが警告されないのはなぜですか?
- 7. ループが1回実行されるたびに "none"が表示されるのはなぜですか?
- 8. forループで "else"コードブロックが実行されるのはなぜですか?
- 9. が表示されなくなるのはなぜですか?
- 10. NoSuchMethodError:mainがアプレットに表示されるのはなぜですか?
- 11. キャンバスにジオメトリドローイングが表示されるのはなぜですか?
- 12. アドレスバーに/#!/が表示されるのはなぜですか?
- 13. mscor.libに「System.EntryPointNotFoundException」が表示されるのはなぜですか?
- 14. DropDownListに "System.Web.Mvc.SelectListItem"が表示されるのはなぜですか?
- 15. リストに追加すると、なぜforループが壊れるのですか? (Python)
- 16. Cプログラミング:forループとブレーク
- 17. クレジットカードが選択されていると、要素が表示/非表示になるのはなぜですか?
- 18. forループがforループで機能しないのはなぜですか?
- 19. 表示されていない要素があるのはなぜですか?
- 20. このエラーが表示されるのはなぜですか
- 21. このStackOverflowExceptionが表示されるのはなぜですか?
- 22. ステータスバーがシャドウで表示されるのはなぜですか?
- 23. setBackgroundResourceForDateが赤で表示されるのはなぜですか?
- 24. forループに入る前にPHPがHTMLコードを表示しないのはなぜですか?
- 25. 'for'ループ条件が失敗するのはなぜですか?
- 26. Forループがプロシージャを複製するのはなぜですか?
- 27. forループで変数bが変更されないのはなぜですか?
- 28. ビューが選択したビューであるときにビュータブが表示されないのはなぜですか?
- 29. コードコントラクトに、「キーコンディションが不正であることが表示されるのはなぜですか?
- 30. GDBのブレーク・スキップ・ラインでラベルが表示されない
あなたは完全なループを投稿することができますか?この警告はおそらく壊れた後のコードの残りの部分に関連しています –
なぜあなたはif節とelse節の両方を壊していますか?つまり、ループには1回の繰り返ししかないので、なぜループがあるのでしょうか? – Eran
あなたはループが一度だけ実行されることを認識していますか?あなたが2つの枝でそれを中断している場合 –