lesson 10:用两个线程玩猜数字游戏,第一个线程负责随机给出1~100之间的一个整数,第二个线程负责猜出这个数。要求每当第二个线程给出自己的猜测后,第一个线程都会提示“猜小了”、“猜大了”或“猜
发布日期:2022-09-10 02:52:02 浏览次数:4 分类:技术文章

本文共 1588 字,大约阅读时间需要 5 分钟。

题目:

 

用两个线程玩猜数字游戏,第一个线程负责随机给出1~100之间的一个整数,第二个线程负责猜出这个数。要求每当第二个线程给出自己的猜测后,第一个线程都会提示“猜小了”、“猜大了”或“猜对了”。猜数之前,要求第二个线程要等待第一个线程设置好要猜测的数。第一个线程设置好猜测数之后,两个线程还要相互等待,其原则是:第二个线程给出自己的猜测后,等待第一个线程给出的提示;第一个线程给出提示后,等待给第二个线程给出猜测,如此进行,直到第二个线程给出正确的猜测后,两个线程进入死亡状态。

代码:

 

package 多线程;    import java.util.Random;    public class Example2 {        public static void main(String[] args) {          // TODO Auto-generated method stub          Thread2 firstTh = new Thread2();          Thread2 secondTh = new Thread2();          boolean flag = true;          while(flag)          {              firstTh.run();              secondTh.run();              if(firstTh.getNum()>100 && firstTh.getNum()<0)              {                  firstTh.notify();                  try {                      secondTh.wait();                  } catch (InterruptedException e) {                      // TODO Auto-generated catch block                      e.printStackTrace();                  }              }              if(secondTh.getNum()>100 && secondTh.getNum()<0)              {                  try {                      firstTh.wait();                  } catch (InterruptedException e) {                      // TODO Auto-generated catch block                      e.printStackTrace();                  }                  secondTh.notify();              }                        System.out.println("随机生成的数为"+firstTh.getNum()+",猜的数字为:"+secondTh.getNum());              if(secondTh.getNum()>firstTh.getNum())              {                  System.out.println("猜大了");              }              else if(secondTh.getNum()

结果:

 

转载地址:https://blog.csdn.net/wfcy023315/article/details/78844270 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Lesson 12 state vs props
下一篇:Lesson 1 React.js 简介

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年03月27日 04时48分50秒