for(;;) 和 while(true) 的区别
2018-01-13 09:50
316 查看
在标准的语义上是完全等价的;
那我们就来看一下在jvm级别上是不是等价的;
for(;;){}的编译结果
while(true){}的编译结果
看起来没有什么不同,实际上也是一样.没有什么不同
但是 while(true)在C和C ++(C#?)的最高设置的编译警告。
也许对于Java来说不是一个问题,但是如果你有时候用其他语言写的话,for(;;)是一个更好的开发习惯。
最后再说一下,两者使用没有区别,实践中使用哪个自己喜欢就好.
那我们就来看一下在jvm级别上是不是等价的;
for(;;){}的编译结果
flags: ACC_PUBLIC, ACC_STATIC Code: stack=0, locals=1, args_size=1 0: goto 0 LineNumberTable: line 3: 0 StackMapTable: number_of_entries = 1 frame_type = 0 /* same */
while(true){}的编译结果
flags: ACC_PUBLIC, ACC_STATIC Code: stack=0, locals=1, args_size=1 0: goto 0 LineNumberTable: line 3: 0 StackMapTable: number_of_entries = 1 frame_type = 0 /* same */
看起来没有什么不同,实际上也是一样.没有什么不同
但是 while(true)在C和C ++(C#?)的最高设置的编译警告。
也许对于Java来说不是一个问题,但是如果你有时候用其他语言写的话,for(;;)是一个更好的开发习惯。
最后再说一下,两者使用没有区别,实践中使用哪个自己喜欢就好.
相关文章推荐
- for(;;)和while(true)的区别
- for(;;)和while(true)的区别
- 1.for(;;) 与 while(true) 的 区别
- for(;;)和while(true)的区别
- while(true)与for(;;)的区别
- 【转】for(;;)和while(true)的区别
- for(;;)和while(true)的区别
- for(;;)和while(true)的区别
- 关于for(;;)和while(1)/while(true)区别
- for(;;)和while(true)的区别
- for循环与while循环的区别和联系
- while(1) 与for(;;) 的区别
- shell编程中while与for的区别及效率比较
- for循环和while循环区别。
- javascript 循环语句 while、do-while、for-in、for用法区别
- for语句和while语句还有do while语句区别
- for和while的区别
- 统计思想的综合例子,while和for的区别典型例子
- javascript 循环语句 while、do-while、for-in、for用法区别
- for与while的区别