首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

while(stopFlag == false) 好 还是 while(!topFlag)解决方案

2012-03-03 
while(stopFlag false) 好还是 while(!topFlag)while(stopFlagfalse)好还是while(!topFlag)[解决办法

while(stopFlag == false) 好 还是 while(!topFlag)
while(stopFlag   ==   false)   好     还是   while(!topFlag)




[解决办法]
我觉得都一样,一般while(!topFlag)这么写的多吧
[解决办法]
应该是 while(!topFlag) 这个好,不用比较直接就可以得出结果的;

而 while(stopFlag == false),要取值再比较再得出结果的,不过比较直观一些。
[解决办法]
仁者见仁,智者见智
[解决办法]
while(!topFlag)

高手都是这样写的!
[解决办法]
写程序讲解的是直观,用最直接简单的方法来表示一件事情

能用直接肯定 就不要用 双重否定来表示肯定,等等等等

所以“while(stopFlag == false) 好 还是 while(!topFlag)”

2个基本都算可以 但while(!topFlag)更适合理解一些
[解决办法]
while(!topFlag)

[解决办法]
如果是 while(stopFlag == false) 和 while(!topFlag)
结果是一样的,编译器会把这两个条件判断转换成
iload_ <n> //从局部变量区的第n个参数把stopFlag读出来,压入java栈
ifne m //如果不等于0,则跳转到标号为m的语句

但是,如果是 while(stopFlag == true) 和 while(topFlag)就不一样了
对于while(topFlag),编译后对应
iload_ <n>
ifeq m
对于while(stopFlag == true),编译后对应
iload_ <n>
iconst_1 // int常量1入栈,就是true
if_icmpne m //如果这两个int不相等则跳转到m. 可以看出,演变成了两个int进行比较

值得一提的是,由于虚拟机并不直接支持boolean, 所以编译器总是会用int表示boolean
[解决办法]
这个可读性好while(!topFlag)
[解决办法]
这种问题有必要研究吗?
[解决办法]
while(stopFlag != true)

热点排行