String 3 大特性

不不变性:是⼀一个 immutable 模式的对象,不不变模式的主要作⽤用是当⼀一个对象需要被多线程共享并
频繁访问时,可以保证数据的⼀一致性。
常量量池优化:String 对象创建之后,会在字符串串常量量池中进⾏行行缓存,下次创建同样的对象时,会直
接返回缓存的引⽤用。
final:String 类不不可被继承,提⾼高了了系统的安全性。
String 的实例例化有两种⽅方式:
直接赋值
通过构造函数,可以直接将字符串串的值传⼊入,也可以传⼊入⼀一个 char 数组。
直接赋值和通过构造函数创建主要区别在于存储的区域不不同,直接赋值存储在字符串串常量量池中。
通过构造函数创建,存储在堆内存中。
eqauls 重写
因为 String 类堆 equals ⽅方法进⾏行行了了重写,所以我们可以直接调⽤用String 的 equals ⽅方法来判断两个字
符串串的值是否相等。
intern() ⽅方法
当调⽤用某个字符串串对象的 intern() ⽅方式,会去字符串串常量量池中寻找,如果已经存在⼀一个值相等的字符串串
对象的话,则直接返回该对象的引⽤用,如果不不存在,则在字符串串常量量池中创建该对象,并返回。
String 常⽤用的⽅方法
1、字符串串截取
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String aString = (String)anObject;
if (coder() == aString.coder()) {
return isLatin1() ? StringLatin1.equals(value, aString.value)
: StringUTF16.equals(value, aString.value);
}
}
return false;
}
public String subString(int beginIndex);
public String subString(int beginIndex,int endIndex);
⽅方法 描述
public String() 创建⼀一个值为空的对象
public String(String original) 创建⼀一个值为original的对象
public String(char value[]) 将⼀一个char型数组转为字符串串对象
public String(char value[], int offset, int count)
将⼀一个指定范围的char型数组转为字符串串
对象
public String(byte[] bytes) 将⼀一个byte型数组转为字符串串对象
public String(byte bytes[], int offset, int length)
将⼀一个指定范围的byte型数组转为字符串串
对象
public int length() 返回字符串串的⻓长度
public boolean isEmpty() 判断字符串串是否为空
public char charAt(int index) 返回字符串串中指定位置的字符
public byte[] getBytes() 将字符串串转为byte型数组
public boolean equals(Object anObject) 判断两个字符串串是否相等
public boolean equalsIgnoreCase(String
anotherString)
判断两个字符串串是否相等并且忽略略⼤大⼩小写
subString(int beginIndex) 从 beginIndex 位置开始截取,⼀一直到字符串串结尾。
subString(int

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值