博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java-string字符串
阅读量:6208 次
发布时间:2019-06-21

本文共 661 字,大约阅读时间需要 2 分钟。

String、StringBuffer、StringBuilder都是final修饰的,都不可以继承

String、StringBuffer、StringBuilder底层都是数组实现的,只不过String中的数值用final修饰,所以String类对象的值不可改变

StringBuffer、StringBuilder都是可变数组,可以用append()方法在字符串尾部添加字符串

StringBuffer是线性安全的,StringBuilder是线性不安全的

String string = "string"; 创建1个对象,存放在字符串池中,如果字符串池中存在该字符串,就创建0个对象

String String = new String("string"); 创建了2个对象,1个存放在字符串池中,1个存在堆区中,如果字符串池中已经存在该字符串,就只创建1个对象

String类的intern()方法可以返回该字符串在常量池中的对象的引用

String类的toLowerCase()、toUpperCase()、replace()、trim()、subString()、concat()方法,都不会改变本身引用字符串的值,而是返回一个新的字符串

每当我们创建字符串常量时,JVM会首先检查字符串常量池,如果该字符串已经存在常量池中,那么就直接返回常量池中的实例引用。如果字符串不存在常量池中,就会实例化该字符串并且将其放到常量池中。由于String字符串的不可变性我们可以十分肯定常量池中一定不存在两个相同的字符串

转载地址:http://hrzja.baihongyu.com/

你可能感兴趣的文章
Spring中的数据源配置
查看>>
在Mac OS X Lion 安装 XCode 3.2
查看>>
Python中的继承
查看>>
Mono 3.2.3 TCP吞吐性能测试报告
查看>>
asp.net mvc5 配置自定义路径
查看>>
Sql學習資源
查看>>
303. Range Sum Query - Immutable
查看>>
禁用SettingSyncHost.exe
查看>>
Spring MVC 之请求处理方法可接收参数(三)
查看>>
线程与进程的区别
查看>>
理解angular中的module和injector,即依赖注入
查看>>
C#+ AE 注意问题汇总(不断更新)
查看>>
2016第42周学习小结
查看>>
Sublime常用快捷键
查看>>
[Android&Java]浅谈设计模式-代码篇:观察者模式Observer
查看>>
Cookie的简单使用
查看>>
idea springboot热部署无效问题
查看>>
Java基础之关键字
查看>>
access数据库表导入到oracle
查看>>
jmeter(二十五)linux环境运行jmeter并生成报告
查看>>