您现在的位置是:群英 > 开发技术 > 编程语言
100以内的正整数和的计算,在java都有哪些方法
Admin发表于 2022-05-28 17:16:09898 次浏览
今天这篇给大家分享的知识是“100以内的正整数和的计算,在java都有哪些方法”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“100以内的正整数和的计算,在java都有哪些方法”文章能帮助大家解决问题。

方法如下:


1、暴力解法

使用for循环直接逐个求解,算法复杂度为O ( n ) O(n)O(n)

    /**
     * <p>暴力解法</p>
     * @param startInclusive
     * @param endExclusive
     * @return
     */
    public int sumByDirect(int startInclusive, int endExclusive){
        int sum = 0;
        for (int i = startInclusive; i < endExclusive; i++) {
            sum += i;
        }
        return sum;
    }

2、流式编程

同暴力解法一样,不过使用了声明式的流式编程,代码量更少并且更加的具有可读性

    /**
     * <p>流式编程</p>
     * @param startInclusive
     * @param endExclusive
     * @return
     */
    public int sumByStream(int startInclusive, int endExclusive){
        return IntStream.range(startInclusive, endExclusive).sum();
    }

3、利用求和公式

利用等差数列求和公式

复杂度为O ( 1 ) O(1)O(1)

    /**
     * <p>利用求和公式</p>
     * @param startInclusive
     * @param endExclusive
     * @return
     */
    public int sumByFormula(int startInclusive, int endExclusive){
        return ((startInclusive + endExclusive - 1) * (endExclusive - startInclusive) )  >> 1;
    }

测试:

    @Test
    public void Test() {
        System.out.println("sumByDirect=" + sumByDirect(1, 101));
        System.out.println("sumByStream=" + sumByStream(1, 101));
        System.out.println("sumByFormula=" + sumByFormula(1, 101));
    }

输出结果:

sumByDirect=5050
sumByStream=5050
sumByFormula=5050

以上就是关于“100以内的正整数和的计算,在java都有哪些方法”的介绍了,感谢各位的阅读,希望文本对大家有所帮助。如果想要了解更多知识,欢迎关注群英网络,小编每天都会为大家更新不同的知识。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: java正整数和
相关信息推荐
2022-05-05 15:16:26 
摘要:Java中判断字符串是否为数字的五种方法,我们在平时的开发过程中,难免要用着数值转换的问题,一般是字符串转数值类型,今天给大家总结5中方法,希望对大家有用!
2021-12-01 18:58:57 
摘要:这篇文章给大家分享的是PHP pthreads v3下worker和pool的使用,一些朋友可能对于worker和pool的使用不是很了解,对此本文就给大家讲讲什么,文中示例代码介绍的非常详细,感兴趣的朋友接下来跟随小编一起学习一下吧。
2022-08-13 17:50:07 
摘要:安卓使用时间长了有卡顿的原因主要有四种:1、系统问题,安卓是开源的,使用后会产生较多系统碎片,长时间不整合就会卡;2、配置问题,每部手机硬件出厂后基本固定,而手机软件会不断升级,几年后硬件就可能无法跟
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部