import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;
public class MyRunnable implements Runnable {
static int[] arr = { 10, 5, 20, 50, 100, 200, 500, 800, 2, 80, 300, 700 }; // 共有数据
static ArrayList<Integer> list = new ArrayList<Integer>();
static {
for (int m : arr) {//只要MyRunnable这个类一加载,就会将数组中的元素添加到集合中
list.add(m);
}
}
static Random ra = new Random();// 用静态修饰,减少了内存的消耗
static int max = Collections.max(list);//最大獎項
@Override
public void run() {
ArrayList<Integer> list1 = new ArrayList<Integer>();
while (true) {
//1,2
synchronized (MyRunnable.class) {
if (list1.size() == 6) {
break;
}
int i = ra.nextInt(list.size());
Integer remove = list.remove(i);// 抽一个少一个
list1.add(remove);
System.out.println(Thread.currentThread().getName());
}
}
System.out.println("在此次抽奖过程中,"
多线程练习题1
最新推荐文章于 2023-04-05 23:29:58 发布