首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Java 计算 1 到 1,000,000 的和

Java 计算 1 到 1,000,000 的和

原创
作者头像
HoneyMoose
修改于 2021-11-04 13:48:33
修改于 2021-11-04 13:48:33
7000
举报
文章被收录于专栏:iSharkFlyiSharkFly

如果让你计算 1 到 100 万的和是多少,你应该会这样写:

代码语言:javascript
复制
    @Test
    public void testSum() {
        int sum = 0;
        for (int i = 1; i <= 1000000; i++) {
            sum = sum + i;
        }
        logger.debug("SUM - {}", sum);
    }

程序不长,但是你如果进行计算的话,你得到的结果很有可能是这样的:

00:38:51.312 [main] DEBUG com.ossez.codebank.algorithm.tests.BlankTest - SUM - 1784293664

是不是发现上面的结果不对?

这是因为在 int 已经溢出了。

在 Java 中,int 只能存储 2147483647 这么多的数字,如果你在上面的代码中使用 int 那么肯定会溢出的。

所以你需要使用 long 来进行计算。

上面的运算结果才是你要的结果。

https://www.ossez.com/t/java-1-1-000-000/13794

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档