Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux编程 > » 正文

循环谜题26Interger。MaxValue的理解

来源: jiqikewang 分享至:
package loopPuzzles;

public class IntergerMaxPuzzle {

	public static final int END = Integer.MAX_VALUE;
	public static final int START = END - 100;

	public static void main(String[] args) {
		int count = 0;
		/* for (int i = START; i <= END; i++) */
		// 这里有一个小知识点:循环会在循环索引(i)小于或等于Integer.MAX_VALUE时持续运行,但是所有的int变量都是小于或等于Integer.MAX_VALUE的。
		//因为它被定义为所有int数值中的最大值。当i达到Integer.MAX_VALUE,并且再次被执行增量操作时,它就有绕回到了Integer.MIN_VALUE。
		//count++;
		System.out.println(count);
		System.out.println(END + 1);//输出结果是:-2147483648,可以看到int值得最大值加1后,回到了int值得最小值。这就是上面的for循环为么是一个无限循环的原因。
		
		for(long i = START; i<=END; i++) {
			count ++;
		}
		System.out.println(count);
	}

}


Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史