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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 许飞翔 中级黑马   /  2012-3-25 18:46  /  1858 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class Ticket extends Thread
  2. {
  3.         private int tick = 100 ;
  4.         public void run()
  5.         {
  6.                 while(true)  //  这个while 判断的是什么?有点不明白
  7.                 {
  8.                         if (tick>0)
  9.                         {
  10.                                 System.out.println(currentThread().getName()+"tick: "+tick--);
  11.                         }
  12.                 }
  13.         }
  14. }
  15. class TicketDemo
  16. {
  17.         public static void main(String[] args)
  18.         {
  19.                 Ticket t1 = new Ticket();
  20.                 Ticket t2 = new Ticket();
  21.                 Ticket t3 = new Ticket();
  22.                 Ticket t4 = new Ticket();
  23.                 t1.start();
  24.                 t2.start();
  25.                 t3.start();
  26.                 t4.start();
  27.         }
  28. }
复制代码
while 判断的是什么?有点不明白?

6 个回复

倒序浏览
while(true)就是个死循环,在这里是让线程一直跑,不停止。
回复 使用道具 举报
循环条件永远为真,里面没定义退出代码或条件的话易死循环。
回复 使用道具 举报
循环条件永远为真,里面没定义退出代码或条件的话易死循环。
回复 使用道具 举报
这里 while (true ) 的作用是 一直让这四个线程跑, 一直不停的卖票 卖票, 票卖完了,这四个线程还在运行,所以需要 Ctrl + c 结束程序

评分

参与人数 1技术分 +1 收起 理由
房宝彬 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 朱俊 于 2012-5-16 15:05 编辑
  1. ~~~~~~~~~~~~~
复制代码
回复 使用道具 举报
胡元 中级黑马 2012-3-25 22:50:35
7#
while的作用是让线程循环进行,没有它的话线程只会进行一次,票子就卖不完了,当然这是个死循环,要强制结束,归根结底,while的作用就是引起循环,这是编成思想的体现!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马