A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

public class D10多线程_共享数组添加3 {
        public static void main(String[] args) {
                new myth().start();
                new myth().start();

        }
}

class myth extends Thread {

        static int i = 0;    //必须是静态的,要不然,每个对象就自建一个
        static int[] arr = new int[6];

        public void run() {
                while (true) {

                        synchronized (myth.class) {
                                if (i >= 6) {
                                        break;
                                }

                                try {
                                        sleep(100);
                                } catch (InterruptedException e) {

                                        e.printStackTrace();
                                }
                                arr[i] = i;
                                i++;
                        }

                        System.out.println("第" + i + "次添加 , 线程" + this.getName() + "向数组"
                                        + arr + "进行添加操作, 添加后,  数组各个值为" + arr[0] + "___" + arr[1]
                                        + "___" + arr[2] + "___" + arr[3] + "___" + arr[4] + "___"
                                        + arr[5]);
                }
        }
}

2 个回复

倒序浏览
你写这么短,确定行吗?
回复 使用道具 举报
两个问题:1.随机性没有保证;2.每个线程添加3个数据无法保证
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马