码迷,mamicode.com
首页 > 编程语言 > 详细

《Java程序员面试宝典》读书笔记1

时间:2015-01-24 00:27:20      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:

今天读书发现一个很有趣的问题

请问以下程序会输出什么? 

  public   class   Test2   { 
    public   static   void   main(String[]   args)   { 
      int   j   =   0; 
      for   (int   i   =   0;   i   <   100;   i++)   { 
        j   =   j++; 
      } 
      System.out.println(j); 
    } 
  } 

 
 
输出的结果是:0 
 
刚看到的时候觉得很不可思议,我选的答案是100,然后看了书上给的解释是什么中间缓存变量,结果看的一塌糊涂,最后发现其实解释起来很简单,完全不用书上写的那一堆乱七八糟的东西,当执行J= j++时,是先将等于0的j赋值给j,然后将后边的j自增,但是下一次执行的时候其实j还是等于0;在别的地方都解释为java中间缓存变量,反正我是没看明白和这个有什么关系,难道其他语言就不是这样么?

《Java程序员面试宝典》读书笔记1

标签:

原文地址:http://www.cnblogs.com/xzjs/p/4245283.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!