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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

模拟3个老师同时发80份笔记, 每个老师相当于一个线程, 分别给三个线程命名为”张老师线程,林老师线程,李老师线程”,
                 * 1) 要求在控制台输出"xxx老师"在发第"xxx"份笔记
                 * 2) 如果要求最后一张试卷必须由”李老师线程”发出,请问应该怎么做?

public static void main(String[] args) throws InterruptedException {
                new TeacherThread("张老师").start();
                new TeacherThread("林老师").start();
                new TeacherThread("李老师").start();

        }
class TeacherThread extends Thread{
        private static int num = 1;
        public TeacherThread(String name) {
                super(name);
        }
        @Override
        public void run() {
               
                while (true) {
                        synchronized (TeacherThread.class) {
                                if (num == 81) {
                                        break;
                                }
                                if (num == 80) {
                                        if (!("李老师").equals(getName())) {
                                                continue;
                                        }
                                }
                                System.out.println(getName() + "正在发" + num + "份笔记");
                                num++;
                        }
                }
        }
}


评分

参与人数 1黑马币 +5 收起 理由
爆裂鼓手 + 5 很给力!

查看全部评分

5 个回复

倒序浏览
回复 使用道具 举报
回复 使用道具 举报
UZI 中级黑马 2016-10-26 00:34:39
板凳
想跳楼 发表于 2016-10-26 00:31
你这个昵称我喜欢

居然没有人注册,所以我就确认了...
回复 使用道具 举报
不错哦  又学习了
回复 使用道具 举报
很好,这么6666
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马