这个问题我建议你在while中加入一个检查的语句,比如下面的
while(true){
if(x>0){
System.out.println(x--);
}
System.out.println("**"); //这块地方,你可以加点什么,让程序打印出内容,用以判断
}
你这样试下后你就会发现问题的,推荐你动手做下
供参考,你也可以把main方法写在其它类,但要写对:
public
class A implements Runnable {
private int x = 100;
public void run() {
while (true) {
if (x > 0) {
//x大于0的时候,继续打印
System.out.println(this.toString()+"---> " +x--);
}else{
//如果想继续循环,则需要给x再设置新的值,如下所示
x = 100;
//退出条件,如果x<=0,break退出循环,否则程序继续处于运行状态,不过什么也不做
//break;
}
}
}
//main函数有参数的:String args[]
public static void main(String args[]) {
A a = new A();
Thread t1 = new Thread(a);
t1.start();
//需要重新new object
A b = new A();
Thread t2 = new Thread(b);
t2.start();
}
}
System.out.println(x--);
你那不是x--了么 每次循环X就减一
循环一百次if就不成立了所以就不输出了
但还在循环只不过不输出东西而已
看清楚while里的条件x>0, 循环里System.out.println(x--); x每次减1, 所以会跳出循环
确认是不是没打印了 还是程序进程被中断了