我想创建一个宾果游戏使用NetBeans IDE 6.9.1(我是编码noob)。现在我被困在尝试创建宾果卡。对于5x5卡的盒子,我使用jButtons。我不能将“B”宾果球随机分配到“B”列。我有一个“工作”的代码,用于随机化哪个“B”球进入其中的“B”jButton,但我的方法不适用于我用来输出随机抽取的宾果球的jLabel。这里是我的“随机B-球代码:”如何显示从java中的数组中随机选择的字符串没有重复
String[] Bball1 = {"B5", "B6", "B11"};
String Brandom1 = (Bball1[new Random().nextInt(Bball1.length)]);
String[] Bball2 = {"B1", "B8", "B15"};
String Brandom2 = (Bball2[new Random().nextInt(Bball2.length)]);
String[] Bball3 = {"B3", "B10", "B13"};
String Brandom3 = (Bball3[new Random().nextInt(Bball3.length)]);
String[] Bball4 = {"B2", "B9", "B14"};
String Brandom4 = (Bball4[new Random().nextInt(Bball4.length)]);
String[] Bball5 = {"B4", "B7", "B12"};
String Brandom5 = (Bball5[new Random().nextInt(Bball5.length)]);
下面是当用户点击时,他们挑了宾果图案提交按钮,将产生的卡(不完全)的代码:
btnSubmit.setEnabled(false);
cboPattern.setEnabled(false);
btn1B.setText(Brandom1);
btn2B.setText(Brandom2);
btn3B.setText(Brandom3);
btn4B.setText(Brandom4);
btn5B.setText(Brandom5);
是的,这是重复的,而不是过于随意,但我做了一些研究阵列,因为我还没有在我的计算机科学课堂上所学他们,并得到了这一点:
public static void main(String[] Bballs) {
String[] Bball;
Bball = new String[2];
Bball[0] = "B1";
Bball[1] = "B2";
Bball[2] = "B3";
int num = (int) (Math.random() * 2);
System.out.println(Bball[num]);
}
这仅仅是一个测试代码和y一样你可以看到我仍然可以获得B1超过一次,这不是我想要的宾果卡和随机挑选的宾果球(我还没有开始)。另外,每当我运行我的程序时,它都不会打印出最后一行。我需要在周三结束之前完成这项工作:/(这是一个很晚的国际滑联项目,不,我没有迟到)。谢谢你的时间。
注意:Random.nextInt优于Math.random。见http://stackoverflow.com/questions/738629/math-random-versus-random-nextintint –