Java中String性能优化

 更新时间:2015年03月26日 09:35:04   投稿:hebedich  
本文给大家分享的是如何在java中对String进行性能优化,使用String的时候需要有哪些注意事项呢,这就是今天我们要给大家总结分析的,有需要的小伙伴可以参考下。

不用使用String的构造函数,可能的话直接使用字符串。

两个特例:

1)想把char []转换为一个String,
2) 使用一个大的String对象的substring()方法;

String.equals() 比 String.equalsIgnoreCase()要快;

尽量使用StringBuilder来构造一个String,而不是“+”操作符和String.concat() (除非是一个表达式,String s = a + b + c);

StringBuilder是不同步的(not synchronized ),所以要比StringBuffer快;

在String[Buffer|Builder]构造函数中加上容量参数,因为创建一个太小的buffer会降低性能;

String.length()==0比String.equals("")要快。使用Java 6时,String.isEmpty()更快;

调用String.toString()是没有意义的;

由于String是不可变的,所以String的方法中,所有返回修改过的String的都是返回了一个新的实例;

String.split(regex)事实上简单的调用了Pattern.compile(regex).split(this, limit),且每次compile()都会返回一个新Pattern。所以如果频繁调用split的话,最好创建单个Pattern实例并重复使用来取代split()。

以上就是本文要给大家分享的内容了,希望大家能够喜欢。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

相关文章

  • SpringBoot如何接收前端传来的json数据

    SpringBoot如何接收前端传来的json数据

    这篇文章主要介绍了SpringBoot如何接收前端传来的json数据问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • java通过HTTP接收json详细实例代码

    java通过HTTP接收json详细实例代码

    Java作为一门广泛使用的编程语言,很多开发人员会用它来进行http请求,获取json数据,这篇文章主要给大家介绍了关于java通过HTTP接收json的相关资料,需要的朋友可以参考下
    2023-11-11
  • Java PriorityQueue优点和缺点面试精讲

    Java PriorityQueue优点和缺点面试精讲

    这篇文章主要为大家介绍了Java面试中PriorityQueue的优点和缺点及使用注意详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • Java对敏感数据进行加密的方法详解

    Java对敏感数据进行加密的方法详解

    敏感数据的加密是数据安全的重要方面,尤其是对于手机号和身份证号这类个人信息,本文主要为大家介绍了Java对敏感数据进行加密的相关方法,希望对大家有所帮助
    2024-03-03
  • 一文带你剖析Redisson分布式锁的原理

    一文带你剖析Redisson分布式锁的原理

    相信使用过redis的,或者正在做分布式开发的童鞋都知道redisson组件,它的功能很多,但我们使用最频繁的应该还是它的分布式锁功能,少量的代码,却实现了加锁、锁续命(看门狗)、锁订阅、解锁、锁等待(自旋)等功能,我们来看看都是如何实现的
    2022-11-11
  • Springboot集成SSE实现单工通信消息推送流程详解

    Springboot集成SSE实现单工通信消息推送流程详解

    SSE简单的来说就是服务器主动向前端推送数据的一种技术,它是单向的,也就是说前端是不能向服务器发送数据的。SSE适用于消息推送,监控等只需要服务器推送数据的场景中,下面是使用Spring Boot来实现一个简单的模拟向前端推动进度数据,前端页面接受后展示进度条
    2022-11-11
  • Java中super关键字介绍以及super()的使用

    Java中super关键字介绍以及super()的使用

    这几天看到类在继承时会用到this和super,这里就做了一点总结,下面这篇文章主要给大家介绍了关于Java中super关键字介绍以及super()使用的相关资料,需要的朋友可以参考下
    2022-01-01
  • SpringBoot常用数据库开发技术汇总介绍

    SpringBoot常用数据库开发技术汇总介绍

    Spring Boot常用的数据库开发技术有JDBCTemplate、JPA和Mybatis,它们分别具有不同的特点和适用场景,可以根据具体的需求选择合适的技术来进行开发
    2023-04-04
  • MybatisPlus开启、关闭二级缓存方法

    MybatisPlus开启、关闭二级缓存方法

    本文主要介绍了MybatisPlus开启、关闭二级缓存方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 基于SqlSessionFactory的openSession方法使用

    基于SqlSessionFactory的openSession方法使用

    这篇文章主要介绍了SqlSessionFactory的openSession方法使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12

最新评论