总结一下String的常用方法
String 类代表字符串。
Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。
所有的用双引号引起来的字符串常量,都是String类的对象
虽然没有写new,只要用双引号引起来,就是String类的对象,"HelloWorld"既是字符串常量,又是String类的对象
String的特点:
1.String本质上是一个字符数组
2.String的内容是不可改变的,数组的长度是不可改变的
不可改变的原因,是字符数组前面用private和final修饰
用private修饰的内容,只能在本类中访问,而又没有提供字符数组的对应的get和set方法,所以数组的内容不可修改
用final修饰的内容,是常量,不可改变,所以数组用final修饰后,就永远是这个数组,不可能变成长度更大的数组了
3.直接打印String类型的变量,打印的是内容,不是地址,因为println方法对String进行了特殊处理
字符数组,直接打印数组名称,打印的是数组中的内容,因为println方法对字符数组进行了特殊处理
String的构造方法
1.public String(String original)把字符串数据封装成字符串对象
2.public String(char[] value)把字符数组的数据封装成字符串对象
3.public String(char[] value,int offset,int count)把字符数组中的一部分数据封装成字符串对象
4.直接赋值也可以是一个对象(定义一个字符串变量)
通过构造方法创建字符串对象和直接赋值创建字符串对象的区别?
String s = new String(“hello”);
String s = “hello”;
==进行比较时的注意事项:
1.如果是基本数据类型,比较的是变量中的具体的数值
2.如果是引用数据类型,比较的是变量中的地址值
判断功能方法
1.boolean equals(Object obj):比较字符串的内容是否相同
注意:参数Object类型,所以调用equals方法可以传递任意类型的变量
2.boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
3.boolean startsWith(String str):判断字符串对象是否以指定的str开头
4.boolean endsWith(String str):判断字符串对象是否以指定的str结尾
获取功能方法
1.int length():获取字符串的长度,其实也就是字符个数
2.char charAt(int index):获取指定索引处的字符
3.int indexOf(String str):获取str在字符串对象中第一次出现的索引,没有返回-1
int lastIndexOf(String str):获取str在字符串对象中最后一次出现的索引,没有返回-1
4.String substring(int start):从start开始截取字符串到字符串结尾
5.String substring(int start,int end):从start开始,到end结束截取字符串;包括start,不包括end
转换功能方法
1.char[] toCharArray():把字符串转换为字符数组
2.String toLowerCase():把字符串转换为小写字符串
3.String toUpperCase():把字符串转换为大写字符串
去除空格和分割功能方法
String trim()去除字符串两端空格
String[] split(String str)按照指定符号分割字符串
注意:split方法中的参数str,是一个正在表达式,在正在表达式中英文的句点具有特殊的含义,不能直接使用,
要想使用英文句点切割的话,请使用\\.
替换功能方法
1.String replace(char oldChar,char newChar)替换字符串中的单个字符,将所有的oldChar替换成newChar
2.String replace(String oldStr, String newStr)替换字符串中的指定内容,
将所有的oldStr替换成newStr