whileTrue意思是要一直进行loop(死循环),也就是无限循环。
死循环就是一个无法结束的循环。出现死循环是因为没有设置好结束条件,循环的结束条件很重要,要充分考虑各种边界情况。在合作式多任务的操作系统中,死循环会使系统没有反应,若是先占式多任务的系统中,死循环会用掉所有可用的处理器时间,不过可以由使用户结束程序。死循环是造成系统假死机的原因之一,其他的可能原因包括死锁或是内存区块错误。
whiletrue的作用
在python中,while是用来处理循环结构的,基本语法为:while条件成立后执行的语句块,由于while循环语句的条件部分为True,即永远成立,所以会不断的执行while循环的语句体。
while循环语句部分,由于每次回到while的条件部分得到的都是成立的结果,所以会一直输出0,1,2...就这样一直输出,不会停止。
当然whileTrue这种语句,一般都是伴随着,break这种语句的,也就是说在循环语句中加上判断条件,条件满足就执行break从而跳出循环,否则死循环一般情况下是没意义的。
while语句介绍
利用while语句,可以让代码块一遍又一遍的执行,只要while语句的条件为True。
while语句包含:
关键字
条件(值为True或False的表达式)
冒号
缩进的代码块(称为while子句)
while(true)的应用及举例
在程序中,常常有一些无限循环的情况,比如当一个程序没有异常发生的时候,让循环一直执行。比如要计算PI的值,当发生异常的时候终止循环,这时候就需要while(true)...break着种结构。这不是新语法,也不算新用法。算得上一种不常见的能解决特殊问题的用法。
下面举例说明,比如要获取控制台输入字符串,然后将获取的字符串打印出来。可以这么写:
importjava.io.IOException;
publicclassConsoleInput{
publicstaticvoidmain(String[]args){
intch;
StringBuffersb=newStringBuffer();
System.out.print("请您输入一字符串:");
while(true){
try{
ch=System.in.read();
if(ch==-1
(char)ch==\n){
break;
}elseif((char)ch!=\r){
sb.append((char)ch);
}
}catch(IOExceptione){
e.printStackTrace();
}
}
System.out.println("您输入的字符串是:"+sb.toString());
}
}
运行结果:
请您输入一字符串:HelloJava!
您输入的字符串是:HelloJava!
Processfinishedwithexitcode0