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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ouz123456m 中级黑马   /  2014-6-10 22:01  /  1896 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.isthreadDemo;

  2. public class TestDemo{
  3.         public static void   main (String[]args){
  4.                 Test1 t = new Test1();
  5.                 Thread t1 = new Thread(t);
  6.                 Thread t2 = new Thread(t);
  7.                 Thread t3 = new Thread(t);
  8.                 Thread t4 = new Thread(t);
  9.                 t1.start();
  10.                 t2.start();
  11.                 t3.start();
  12.                 t4.start();
  13.         }
  14. }
  15. class Test1 implements Runnable{
  16.         private int ticket;
  17.         public void run(){
  18.                 while(true){
  19.                         if(ticket>0){
  20.                                 System.out.println(Thread.currentThread().getName()+"sale:"+(ticket--));
  21.                         }
  22.                         else{
  23.                                 break;
  24.                         }
  25.                 }
  26.         }
  27. }
复制代码


这段代码为什么在MyEclipse中无法运行啊???编译没有错误。。。
求高人指点啊!!!
谢谢

3 个回复

倒序浏览
话说,这个变量ticket,没有给定初始值,默认的就是0,那线程运行到这里不就跑道else语句里面执行break了吗
回复 使用道具 举报 1 0
楼上说得对,你应该给ticket设定一个初始值就能运行了!
回复 使用道具 举报 1 0
Gaara33 发表于 2014-6-10 22:28
话说,这个变量ticket,没有给定初始值,默认的就是0,那线程运行到这里不就跑道else语句里面执行break了吗 ...

我傻逼了。。。。谢谢啊:loveliness:
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马