Java
1// while文を使った無限ループのサンプル 2public class InfiniteLoopSample { 3 4 public static void main(String[] args) { 5 6 int cnt = 0; 7 int[] values; 8 9 while (true) { 10 // ループカウンタを増やす 11 cnt++; 12 13 // サイコロを振る 14 int dice = (int) (Math.random() * 6.0 + 1); 15 values = {dice};/*エラーが出る*/ 16 17 // 1が出たらループを抜ける 18 if (1 == dice) { 19 break; 20 } 21 } 22 23 System.out.println("1が出るまで" + cnt + "回サイコロを振りました"); 24 25 for (int val : values) { 26 System.out.println("val = " + val); 27 } 28 } 29} 30
変数valuesにdiceの値をその都度代入し、最後の拡張for文で吐き出したいのですが、型の不一致等エラーが出ます。
values = {dice};/エラーが出る/ はどう書くのが正解でしょうか。
試した書き方は
values = dice;
values = {dice};
values[] = dice;
values[] = {dice};
values = new int[] { dice };
です。最後の初期化してしまうので、結果が必ず1になりますが唯一エラーが出ませんでした。
よろしく願いします
回答4件
あなたの回答
tips
プレビュー