Java程序优化

1、字符串优化处理

在Java中,对字符串做了大量的优化处理

  • 1、不变性

当一个对象被多个线程共享,不变性可以省略同步和锁等待的时间

  • 2、针对常量池的优化

当两个string对象拥有相同的值时,他们引用常量池中的同一个拷贝

package XingNeng;

/**
 * Created by haicheng.lhc on 21/05/2017.
 *
 * @author haicheng.lhc
 * @date 2017/05/21
 */
public class StringTest {
    public static void main(String[] args) {
        String str1 = "abc";
        String str2 = "abc";
        String str3 = new String("abc");
        System.out.println(str1 == str2);
        System.out.println(str1 == str3);
        System.out.println(str1 == str2.intern());

    }
}

输出结果为:

  • 3、类的final定义

提供系统的效率

核心数据结构

List

数据结构名 实现 插入 删除 遍历查找 是否线程安全 备注
ArrayList 数组 增加到尾端性能好,到任意位置性能差 性能差 性能好 不安全 当需要扩容的时候会影响性能
LinkedList 双向循环链表 增加到任意位置有优势 性能好 性能差 每次需要新建Entry

Map

Set

使用NIO提升系统性能

引用类型

可以参考这篇文章:强引用、弱引用、软引用、虚引用

有助于改善性能的技巧

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容