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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kemeng 中级黑马   /  2015-3-16 12:46  /  775 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


  1. class Res
  2. {
  3.         String name;
  4.         String sex;
  5.         boolean flag=false;
  6. }

  7. class Input implements Runnable
  8. {
  9.         private Res r;
  10.         //Object obj=new Object();
  11.         Input(Res r)
  12.         {
  13.                 this.r=r;
  14.         }
  15.         public void run()
  16.         {
  17.                 int x=0;
  18.                 while(true)
  19.                 {
  20.                         synchronized(r)
  21.                         {
  22.                                 if(r.flag)
  23.                                         try
  24.                                         {
  25.                                                 r.wait();
  26.                                         }
  27.                                         catch (Exception e)
  28.                                         {
  29.                                         }
  30.                                 if(x==0)
  31.                                 {
  32.                                         r.name="zhansan";
  33.                                         r.sex="nan";
  34.                                 }
  35.                                 else
  36.                                 {
  37.                                         r.name="lisi";
  38.                                         r.sex="nvnvnvnvnv";
  39.                                 }
  40.                                 x=(x+1)%2;
  41.                                 r.flag=true;
  42.                                 r.notify();
  43.                         }
  44.                 }
  45.         }
  46. }

  47. class Output implements Runnable
  48. {
  49.         private Res r;
  50.         //Object obj=new Object();
  51.         Output(Res r)
  52.         {
  53.                 this.r=r;
  54.         }
  55.         public void run()
  56.         {
  57.                 while(true)
  58.                 {
  59.                         synchronized(r)
  60.                         {
  61.                                 if(r.flag==false)
  62.                                         try
  63.                                         {
  64.                                                 r.wait();
  65.                                         }
  66.                                         catch (Exception e)
  67.                                         {
  68.                                         }
  69.                                 System.out.println(r.name+"....."+r.sex);
  70.                                 r.flag=false;
  71.                                 r.notify();
  72.                         }
  73.                 }
  74.         }
  75. }

  76. class Demo
  77. {
  78.         public static void main(String[] args)
  79.         {
  80.                 Res r=new Res();
  81.                 Input i=new Input(r);
  82.                 Output o=new Output(r);
  83.                 Thread t1=new Thread(i);
  84.                 Thread t2=new Thread(o);
  85.                 t1.start();
  86.                 t2.start();
  87.         }
  88. }
复制代码


1 个回复

倒序浏览
这不是毕老师的代码吗
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马