文章目录
- String类的实例化
- “==”和equals()的区别
- String类中常用方法
String类的实例化
相信小伙伴们平常对String类的实例化通常是 直接赋值 的,而很少有人会去通过 构造方法 来进行实例化,就算去 new String(); IDEA也会告诉你,new String() 是冗余的,两种实例化的方式所得到的的赋值效果虽然是相同的,但是其中还有些许不同。
// 直接赋值
String str1="Android_小黑";
// 通过构造方法实例化
String str2=new String("Android_小黑");
“==”和equals()的区别
如果我们就上面的 str1 和 str2 来进行比较
System.out.println(str1 == str2);
System.out.println("equals方式:" + str1.equals(str2));
输出结果:false equals方式:true,这是为什么呢?
这是因为,“==”如果用在String上的话,就是比较String对象的内存地址,str1 和 str2 的内存地址当然不同,所以输出是false,equals() 则是String类提供的专门对字符串内容进行比较的方法,str1 和 str2 的内容是一样的,所以输出的就是 true
String类中常用方法
- char charAt(int index) 获取指定索引位置的字符
- char[] toCharArray() 把字符串中的所有字符以字符数组形式返回
- boolean equals(String str) 判断字符串内容是否一样(分大小写)
- boolean equalsIgnoreCase(String str) 判断字符串内容是否一样(不分大小写)
- boolean contains(String str) 判断某字符串是否存在此字符串中(子串判断)
- int indexOf(String str) 从前往后查找字符串在此字符串中的位置(不存在返回 -1)
- int indexOf(String str , int from) 同上 从from位置开始
- int lastIndexOf(String str) 同上上, 反向查找
- int lastIndexOf(String str , int from) 同上 , 从from开始
- boolean startsWith(String str) 判断此字符串是否以某字符串开头
- boolean startsWith(String str ,int to) 同上 从 to 位置开始
- boolean endsWith(String str ) 判断此字符串是否以某字符串结尾
- String replaceAll(String regex , String rep) 用指定字符串替换指定字符串
- String replaceFirst(String regex , String rep) 用指定字符串替换指定字符串(只替换第一个)
- String[] split(String regex) 指定字符串作为分割符,进行分割
- String[] split(String regex , int limmit) 同上 (只分割成指定个数)
- String subString(int begin) 从指定位置截取字符串至结尾
- String subString(int begin , int end) 从指定位置截取字符串至指定位置
- boolean isEmpty() 判断字符串是否为空
- int length() 获取字符串长度
- String trim() 去除左右空格
- String toUpperCase() 字符串中的小写父母全都转换成大写字母
- String toLowerCase() 字符串中的大写父母全都转换成小写字母
代码演示几个常用方法:
//演示几个常用的方法
System.out.println(str1.substring(5));//结果:id_小黑
System.out.println(str1.length());//结果: 10
System.out.println(str1.isEmpty());//结果: false
System.out.println(str1.toLowerCase());//结果:android_小黑
System.out.println(str1.toUpperCase());//结果:ANDROID_小黑
String[] strings = str1.split("_");
System.out.println(strings[0]+" "+strings[1]);//结果:Android 小黑
String str3=" 123 ";
System.out.println(str3.trim());//结果:123