String类入门
Java中,String类实例,代表一组不可改变的字符 序列,实现了CharSequence接口,字面量由”” 双引号包括 。 String类封装了字符串处理的常用方法,并可使用“+”号操作 符来连接字符串
String的主要方法
方法名 | 作用 |
---|---|
length() | 获得字符串的长度 |
trim() | 删除当前字符串前后的空格符 |
startsWith(String prefix)、 endsWith(…) | 如果prefix是当前字符串的前缀,则返回true,否则返回false |
charAt(int index) | 返回字符串中index位置的字符 |
indexOf(String str) contains(…) | 字符位置查找,返回字符ch在字符串中第一次出现的位置, 没有则返回-1 |
concat(String str) | 拼接字符串,其实是+ |
replace(char oldChar,char newChar) | 字符串替换 |
subString(int beginIndex) | 字符串截取 |
toLowerCase() | 将当前字符串中所有字符转换为小写 |
toUpperCase() | 将当前字符串中所有字符转换成大写 |
String[] split(String regex) | 根据给定正则表达式的匹配拆分此字符串 |
每次修改String对象值时,都将创建一个全新的字符串
String 常量池
String Pool:
•为克服不可变类缺点,Java中引入常量池概念。
•字面量literal与intern()方法将导致字符串被存储于常量 池,俗称入池。
•当使用字符串字面量时,会进入常量池中查找该字符串,
- 如找到,将直接返回引用。
- 如未找到,将在常量池中创建该字符串,再返回其引用
StringBuffer
- StringBuffer对象代表一组内容可改变的Unicode 字符序列,即可以修改的字符串。
- StringBuffer类是线程安全的
StringBuilder
StringBuilder可变字符串: - 非线程安全(单线程下速度最快)