java的String字符串
目录
不变的字符串
字符串的内容是不可以变的
创建字符串的4种方法
String的低层是byte[ ],另外如果用直接创建字符串的方式创建,即使我们没new,jvm也会帮我们把这个字符串new成一个对象。
字符串的常量池
字符串常量池位于JVM的堆当中,只有当程序中的字符串是“ ”的形式表示时,这个字符串的地址值才会存在与字符串的常量池里,否则字符串的地址值存在与堆中。
字符串的常用方法
1.equal比较字符串的值
它有两种常用的比较方法
- 对象.equals(obj) //区分大小写
- 对象.equalsIgnoreCase(str) //区分大小写
equals方法的注意事项:
1.任何对象都能用obejct进行接收
2.equals方法比较时a.equals(b) == b.equals(a)
2.获取字符串的值
对象.length获取字符串当中字符的总长度
对象.concat(str)将当前字符串和参数拼接,返回新的字符串
对象.charAt(i)获取指定索引位置的单个字符
对象.indexOf(str)查找参数字符串在本字符串当中首次出现的索引位置,如果没查到就返回-1值
3.截取字符串
对象.substring(i) 截取从参数位置一直到字符串末尾,返回新字符串
对象.substring(begin, end) 截取从begin开始一直到end结束中间的字符串。[begin,end)包含左边不包含右面
4.字符串的转换与替换
对象.toCharArray() 将当前字符串拆分成为字符数组作为返回值
对象.getBytes() 获取当前字符串底层的字节数组
对象.replace("被替换的字符","新的字符") 将指定旧字符替换为指定新字符
5.字符串的分割方法
对象.split(regex) 将字符串切分成若干部分
split方法中要写正则表达式,当然如果用","切分不用写正则,但是用"."切分必须写成"\\."