java常用类 String类(2020-01-15)

String类

String s1="mainsdui";

String s2="mainsdui";

  s1= "good";

System.out.println(s1);

System.out.println(s2);

输出结果:good       mainsdui

这是很简单的

上面代码中,创建s1时,jvm会在常量池中创建一个mainsdui字符串对象, 创建s2时,jvm会去常量池中搜索,此时常量池中有mainsdui,所以就不创建了,直接让s2指向之前创建的mainsdui.当执行到最后一行时, jvm会在常量池中创建一个good, 然后让s1指向这个good,而不是将常量池中的mainsdui修改为good,所以说常量池中的对象内容是不可修改的。

输出结果:true     true       false      true

注意:比较两个字符是否一致最好使用equals方法


String s7 ="a";

String s8 ="b";

String s9 ="ab";

String s10 =s7+s8;//开辟新的内存空间

Systrm.out.println(s9 == s10);

输出结果false


/ /尽 量避免对String对象进行频繁的拼接操作

错误演示:

String s11 = "   ";

for(int i=0;i<100;i++){

s11+=i;

}

System.out.println(s11);

输出结果,乱七八糟的数字// 如果要用建议使用StringBuffer StringBuilder

String类常用方法

1.char charAt(int index);获取index位置的字符

2.boolean contains(CharSequence s)判断字符串中是否包含某个字符串

3. boolean endsWith(String endStr);判断是否是以某个字符串结尾

4. boolean equalslgnoreCase(String anotherString);忽略大小写比较两个字符串是否相等

5. byte[] getBytes():转换成byte数组

6. int indexOf(String str);取得指定字符在字符串的位置

7. int indexOf(String str, int fromIndex);从指定的下标开始取得指定字符在字符串的位置

8. int lastIndexOf(String str);从后面开始取得指定字符在字符串最后出现的的位置

9. int lastlndexOf(String str, int fromIndex);从后面开始指定的下标开始取得指定字符在字符串的位置

10. int length();获取字符串的长度

11. String replaceAll(String s1,String s2);替换字符串中的内容

12. String[] split(String s);根据指定的表达式拆分字符串

13. boolean startsWith(String s);判断是否是以某个字符串开始

14. String substring(int begin);根据传入的索引位置截子串

15. String substring(int beginlndex, int endIndex);根据传入的起始和结束位置截子串

16. char[] toCharArray();将字符串转换为char数组

17. void toUpperCase();转换为大写

18. void toLowerCase();转换为小写

19. String trim();去除空格

20. String valueOf(Object obj;将其他类型转换为字符串类型

你可能感兴趣的:(java常用类 String类(2020-01-15))