一不注意, 看起来ok 的地方都出问题了! 后来才突然想起,原来是 Integer 溢出啊

这样的代码, 没想到也会出问题。

public static final long Cap_Size = 95100010001000; 而

Cap2_Size = 98
100010001000 变成了负数, 真是的。

public class TestDigitOverflow {

public static final long Cap_Size = 95*1000*1000*1000; // 95 GB , 1000 作为单位
public static final long Cap2_Size = 98*1000*1000*1000; // 98 GB , 1000 作为单位
public static final long Max_Size = 100*1000*1000*1000; // 100 GB , 1000 作为单位 /**
* Integer 溢出测试 !
*
* @param args
*/
public static void main(String[] args) { System.out.println(Cap_Size);
System.out.println(Cap2_Size);
System.out.println(Max_Size); if (12344 > Cap2_Size) {
System.err.println( "aaaaaaaaaaaaa " + Long.MAX_VALUE);
} System.out.println(95*1000*1000*1000);
System.out.println(98*1000*1000*1000);
System.out.println(99*1000*1000*1000);
System.out.println(100*1000*1000*1000); /**
* 加上 L 就好了!
*/
System.out.println(95*1000*1000*1000L);
System.out.println(98*1000*1000*1000L);
System.out.println(99*1000*1000*1000L);
System.out.println(100*1000*1000*1000L); }

}

结果:

510719488

aaaaaaaaaaaaa 9223372036854775807

-784247808

1215752192

510719488

-784247808

215752192

1215752192

95000000000

98000000000

99000000000

100000000000

记一次恐怖的 Integer 溢出的更多相关文章

  1. 记一次java程序内存溢出问题

    一个自然语言处理程序,在封装为web-service后,部署到线上运行. 但最近出现了内存溢出的情况,频繁的out of memory. 先盲目尝试在启动脚本中增加-XX:-UseGCOverhead ...

  2. 记一次公司JVM堆溢出抽丝剥茧定位的过程

    背景 公司线上有个tomcat服务,里面合并部署了大概8个微服务,之所以没有像其他微服务那样单独部署,其目的是为了节约服务器资源,况且这8个服务是属于边缘服务,并发不高,就算宕机也不会影响核心业务. ...

  3. JVM 常见线上问题 → CPU 100%、内存泄露 问题排查

    开心一刻 明明是个小 bug,但就是死活修不好,我特么心态崩了...... 前言 后文会从 Windows.Linux 两个系统来做示例展示,有人会有疑问了:为什么要说 Windows 版的 ? 目前 ...

  4. 【leetcode】367. Valid Perfect Square

    题目描述: Given a positive integer num, write a function which returns True if num is a perfect square e ...

  5. ALGO-157_蓝桥杯_算法训练_阶乘末尾(高精度)

    问题描述 给定n和len,输出n!末尾len位. 输入格式 一行两个正整数n和len. 输出格式 一行一个字符串,表示答案.长度不足用前置零补全. 样例输入 样例输出 数据规模和约定 n<=, ...

  6. DIOCP开源项目-DIOCP3的ECHO测试<贴图>

    星期六开了测试台测试机子.星期天休息,今天早上来接两个图 开了2个客户端,一个qsl的echo client,一个是楠楠的dbiocp回调客户端.建立13240个连接 今天来后,机子很卡,后来发现是楠 ...

  7. 你所不知道的库存超限做法 服务器一般达到多少qps比较好[转] JAVA格物致知基础篇:你所不知道的返回码 深入了解EntityFramework Core 2.1延迟加载(Lazy Loading) EntityFramework 6.x和EntityFramework Core关系映射中导航属性必须是public? 藏在正则表达式里的陷阱 两道面试题,带你解析Java类加载机制

    你所不知道的库存超限做法 在互联网企业中,限购的做法,多种多样,有的别出心裁,有的因循守旧,但是种种做法皆想达到的目的,无外乎几种,商品卖的完,系统抗的住,库存不超限.虽然短短数语,却有着说不完,道不 ...

  8. 深入Go的错误处理机制使用

    开篇词 程序运行过程中不可避免的发生各种错误,要想让自己的程序保持较高的健壮性,那么异常,错误处理是需要考虑周全的,每个编程语言提供了一套自己的异常错误处理机制,在Go中,你知道了吗?接下来我们一起看 ...

  9. JDK1.8 HashMap学习

    1:源码分析 1.1:构造方法 public HashMap(int initialCapacity, float loadFactor) { ) throw new IllegalArgumentE ...

随机推荐

  1. Mysql 复制工作原理

    数据库配置的时候,一定要开启二进制日志,如果开始没开启后来再想开启的话,必须重启. 基于日志点的复制 备份数据库工具 ----------------------------------------- ...

  2. 关于Eclipse无法显示package Explorer 内容的解决方法

    今天电脑不知道怎么搞的抽风了, package explorer等内容完全无法显示.用window->view方法手动添加还是setpreView都没有办法解决. 网上搜了半天也没有解决办法.无 ...

  3. springmvc学习(五)

    这次主要是记录一下 springmvc 关于异常处理 和 拦截的回顾 关于springmvc  异常处理:springmvc 提供了 HandlerExceptionResolver  异常处理解析接 ...

  4. 廖雪峰Java5Java集合-5Queue-1使用Queue

    Queue特性和基本方法 Queue实现一个先进先出(FIFO, First In First Out)的队列.如收银台排队支付. Java中LinkedList实现了Queue接口,可以直接把Lin ...

  5. etcd 命令行(转)

    原文 https://www.cnblogs.com/breg/p/5756558.html 比较重要的配置 -name 节点名称,默认是UUID-data-dir 保存日志和快照的目录,默认为当前工 ...

  6. grafana 指标视图嵌入到其他html网页

    我们开发了一套管理平台用来监控整个系统环境的运行情况,但是在指标信息这块不想重新开发,而想直接拿grafana来用,刚开始的时候我们的管理平台和grafana是完全独立的,只能从我们平台跳转到graf ...

  7. text clf rnn

    #!/usr/bin/env python # coding=utf- import numpy as np import pandas as pd import re from bs4 import ...

  8. 禅道在docker上部署与迁移

    一.禅道部署 1.下载地址 禅道开源版:   http://dl.cnezsoft.com/zentao/docker/docker_zentao.zip 数据库用户名: root,默认密码: 123 ...

  9. Retrofit 使用方法

    public class MainActivity extends Activity { private ListView mListView; //private ImageListAdapter ...

  10. vultr上 windows使用pptp拨号来实现冗余双网关的解决方案

    rasdial是拨号程序,pptpvpn是网卡拨号名称,后面跟的是帐号和密码.pptpvpn见下图:就是提前创建好一个PPTP的拨号连接 上面是启动时候的计划任务,那么万一拨号中断,要继续重拨还需要做 ...