11 个 Java 代码性能优化技巧

在本文开始前,先给大家分享几个好用的IDEA激活码

这里提供几个最新的激活码,有需要的朋友可以试试,先到先用:

2022和2023Intellij IDEA最新激活码,IDEA稳定专属激活码(持续更新)

2022和2023Pycharm激活码,Pycharm稳定专属激活码(持续更新)

2022和2023Webstorm激活码,Webstorm稳定专属激活码(持续更新)

2022和2023Phpstorm激活码,Phpstorm稳定专属激活码(持续更新)

2022和2023Goland激活码,Goland稳定专属激活码(持续更新)

 

1.避免多个if-else语句

这个优化点大家应该都很熟悉了。但写代码的时候,我还是喜欢嵌套多个if-else。

这样做会影响性能。因为JVM要比较条件。如果在 for、while 等循环中使用相同的条件,情况会变得更糟。

如果我们的业务逻辑中有很多条件,我们可以尝试将这些条件分组并返回一个布尔值,然后在if语句中使用它。

另外,如果可能的话,我们可以考虑使用switch语句来代替多个if-else。switch 语句比 if-else 具有性能优势。

与上面的代码相比,合适的做法应该是这样:

2.避免长方法

当我们定义一个方法时,我们应该考虑一个方法不应该太长,并且应该专门执行单个功能。这有利于维护和性能。

一方面,从维护的角度来看,适当长度的方法更具可读性并且更容易理解。

另一方面,方法在类加载和方法调用期间加载到内存中。

如果方法太大,则需要额外的内存和 CPU 周期来处理它。我们应该学会在适当的逻辑点分解一个长方法。

3.避免使用迭代器

按照Java5的风格来编写循环,方便又简洁foreach。但有时简单性是以牺牲性能为代价的。


每次运行代码时,如果 strs 是 Iterable,则会创建一个新的 Iterator 对象。这样做会导致更多的内存消耗。

如果你对性能有极致的追求,建议你使用原来的写法


4.避免在集合中获取大小

迭代任何集合时,预先获取集合的大小,而不是在迭代期间获取它 – 这可以避免多次调用 size() 方法。


5.避免使用+来连接字符串

从JDK5开始,Java编译器进行了优化,用于+拼接字符串,编译完成后自动优化为使用StringBuilder。

而且String是final类,用String创建的对象不能被重用。因此,如果我们需要连续拼接,使用+符号拼接字符串会导致创建多个String对象,从而占用更多的堆内存。

一般来说,当字符串不多的时候,+和StringBuilder的拼接效率相差无几,但是如果涉及到单线程循环拼接,我们最好还是使用StringBuilder来保证性能优化。

发布者:admin,转转请注明出处:https://www.ajihuo.com/soft/5656.html

(1)
上一篇 2023年7月26日 下午12:03
下一篇 2023年8月11日 上午6:40

相关推荐

  • 从前端到后端编码的过渡

    在本文开始前,先给大家分享几个好用的IDEA激活码 这里提供几个最新的激活码,有需要的朋友可以试试,先到先用: 2022Intellij IDEA最新激活码,IDEA稳定专属激活码(持续更新) 2022Pycharm激活码,Pycharm稳定专属激活码(持续更新) 2022Webstorm激活码,Webstorm稳定专属激活码(持续更新) 2022Phpst…

    2022年10月23日
    00
  • 最新Webstorm激活码分享(2023.3.14)

    一、Webstorm激活码 Webstorm激活码提取地址:www.ajihuo.com 长期更新!!! Webstorm2021,2022,2023都可以使用 随着移动互联网的发展,WebStorm作为一款前端开发工具,在开发者中越来越受欢迎。WebStorm是JetBrains公司开发的一款跨平台的JavaScript IDE,支持HTML,CSS,Ja…

    2023年3月14日
    00
  • Spring Boot 2.0 — 项目结构和最佳实践(第 2 部分)

    在本文开始前,先给大家分享几个好用的IDEA激活码 这里提供几个最新的激活码,有需要的朋友可以试试,先到先用: 2022和2023Intellij IDEA最新激活码,IDEA稳定专属激活码(持续更新) 2022和2023Pycharm激活码,Pycharm稳定专属激活码(持续更新) 2022和2023Webstorm激活码,Webstorm稳定专属激活码(…

    2023年4月6日
    00
  • 使用 Spring 实现 OAuth2/OIDC 及其代理

    在本文开始前,先给大家分享几个好用的IDEA激活码 这里提供几个最新的激活码,有需要的朋友可以试试,先到先用: 2022和2023Intellij IDEA最新激活码,IDEA稳定专属激活码(持续更新) 2022和2023Pycharm激活码,Pycharm稳定专属激活码(持续更新) 2022和2023Webstorm激活码,Webstorm稳定专属激活码(…

    2023年3月24日
    00
  • 25 个热门 Java 面试问题及答案

    在本文开始前,先给大家分享几个好用的IDEA激活码 这里提供几个最新的激活码,有需要的朋友可以试试,先到先用: 2022和2023Intellij IDEA最新激活码,IDEA稳定专属激活码(持续更新) 2022和2023Pycharm激活码,Pycharm稳定专属激活码(持续更新) 2022和2023Webstorm激活码,Webstorm稳定专属激活码(…

    2023年7月14日
    00

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注