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

相关推荐

  • 在 Web 开发中使用 Go

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

    2022年12月16日
    00
  • 密码保护:Java程序员简历和面试技巧

    无法提供摘要。这是一篇受保护的文章。

    2022年11月2日
    00
  • 您需要为网络安全职业学习什么?

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

    2023年1月19日
    00
  • 2022最新Java在线支付实战视频课程

    2022最新Java在线支付实战视频课程 下载链接:https://pan.baidu.com/s/1Zib8M7cebVKSUt1gZXFRsg?pwd=1234提取码:1234 这里提供几个最新的激活码,有需要的朋友可以试试,先到先用: 2022和2023Intellij IDEA最新激活码,IDEA稳定专属激活码(持续更新) 2022和2023Pych…

    2023年3月15日
    00
  • Java 中的流可以替代循环吗?

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

    2023年7月23日
    00

发表回复

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