3.有一个抽奖池,该抽奖池中存放了奖励的金额,该抽奖池用一个数组int[] arr = {10,5,20,50,100,200,500,800,2,80,300};
创建两个抽奖箱(线程)设置线程名称分别为“抽奖箱1”,“抽奖箱2”,随机从arr数组中获取奖项元素并打印在控制台上,格式如下:
抽奖箱1 又产生了一个 10 元大奖
抽奖箱2 又产生了一个 100 元大奖
//.....
private int[] arr = {10,5,20,50,100,200,500,800,2,80,300};
private int num = arr.length;
private ArrayList<Integer> list = new ArrayList<Integer>();
public class Test_01Demo extends Thread {
static int[] money = { 10, 5, 20, 50, 100, 200, 500, 800, 2, 80, 300, 700 };
static int index = 0;
@Override
public void run() {
synchronized (Test_01.class) {
while (true) {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 创建随机数对象
Random r = new Random();
index = r.nextInt(money.length);
System.out.println(getName() + "又产生了一个" + money[index] + "元大奖");
}
}
}
}
// 测试类
public class Test_01 {
public static void main(String[] args) {
Test_01Demo t1 = new Test_01Demo();
t1.setName("抽奖箱1");
t1.start();
Test_01Demo t2 = new Test_01Demo();
t2.setName("抽奖箱2");
t2.start();
}
}