关闭

for(;;) 和 while(true) 的区别

标签: javac死循环whilefor
34人阅读 评论(0) 收藏 举报
分类:

在标准的语义上是完全等价的;
那我们就来看一下在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(;;)是一个更好的开发习惯。

最后再说一下,两者使用没有区别,实践中使用哪个自己喜欢就好.

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Python天坑系列(一):while 1比while True更快?

 0. 前言 前些天被Python的多线程坑了一把,因此产生了写一个《Python天坑系列》博客的想法,说说我碰到的那些Python的坑。 而天坑这个词呢,一方面指Python的坑,另一方面...
  • yongche_shi
  • yongche_shi
  • 2015-04-20 16:25
  • 5206

python if条件判断、for循环和while循环

参考: http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013747382818...
  • u012005313
  • u012005313
  • 2015-08-27 21:21
  • 4305

for 循环和while循环区别

do-while循环 while循环 for循环 死循环选择for还是while  C语言提供了好几种循环结构,即while、for和do-while。汇编语言中并没有相应的指令存在,作为替代,将条件...
  • XscKernel
  • XscKernel
  • 2015-11-11 15:59
  • 3245

for 和 while的区别

下列关于for循环和while循环的说法中哪个是正确的?( )   A.while循环能实现的操作,for循环也都能实现     B.while循环判断条件一般是程序结果,for循环判断条件一...
  • lyl494223339
  • lyl494223339
  • 2012-08-25 13:34
  • 8056

while(1)和for(;;)两个死循环有什么区别

一般for(;;)性能更优 for(;;)   {} 复制代码 这两个;; 空语句,编译器一般会优掉的,直接进入死循环 while(1)   {...
  • ljb825802164
  • ljb825802164
  • 2016-01-09 21:21
  • 3261

for循环和while循环的区别

当知道执行次数的时候一般用for 当条件循环时一般用while 例如: for i=0,i {} 这里n是已知数,可以循环n次 while i {} 不知道要循环多少次,但当i>=...
  • gjl8685941
  • gjl8685941
  • 2017-11-08 15:34
  • 173

for和while的区别

for和while的区别,面试需要考虑周到
  • u012360598
  • u012360598
  • 2014-12-06 14:10
  • 355

while(1) 与for(;;) 的区别

一、 背景今天在网上看到一篇blog,文章题目是《C代码优化方案》,其中有一节说到while(1)和for(;;)两种无线循环,哪种效率更高?但是,在现代编译器上,其实两种无线循环效率都是一样的。...
  • qq_32744005
  • qq_32744005
  • 2016-06-16 23:59
  • 1155

java学习10--循环结构-for与while区别、无限循环、循环应用

// 循环结构使用场景: /* 当对某些代码执行很多次时,使用循环结构完成; 当对一个条件进行一次判断时,可以使用if语句; 当对一个条件进行多次判断时,可以使用w...
  • yanglijuan0119
  • yanglijuan0119
  • 2015-07-04 23:03
  • 330

for 循环和while循环区别

do-while循环 while循环 for循环 死循环选择for还是while  C语言提供了好几种循环结构,即while、for和do-while。汇编语言中并没有相应的指令存在,作为替代,将条件...
  • XscKernel
  • XscKernel
  • 2015-11-11 15:59
  • 3245
    个人资料
    • 访问:679次
    • 积分:189
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:2篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论