String和内存
一、String是什么?
- String是一个类型,遵循java对类型的定义。
- 在java.long这个包下面的类型,是不需要导包就能使用String的。
- String底层是一个char型的value容器。
- String被定义后不能改变value。
二、内存
一、String与内存的联系
- String直接定义的对象直接写在常量池。
- 常量池里相同的内容只会出现一个。
- 任何类都默认继承Object。
- String不能用 ==来判断,只能用equals来判断,equals先判断是否都为String类型,再判断内容是否相同。
三、String的用法
一、求长
- length()
一、定位
- 根据角标找值:str.charAt()
- str.substring(0.n):从0到n
- 根据值找角标:str.index() 从前往后找
- str.lastIndexOf(“X”,n) 从第n个数开始找X
三、替换
- String的替换是重新生成了一个新的String,不是真的替换
- 判断大小 a.compareTo(b) 输出大于0为正,小于0为负
- 粘合拼接 str.concat(“n”) 在后面加上n
- 替换 str1 = str.replace(“x”,“y”) 将x替换成y
- equals 判断是否相同,先判断是否都为String类型,再判断内容是否相同
- contentEquals 只判断内容是否相同,不判断类型 ,是只有String有的方法