String类

来源:互联网 发布:淘宝链接转换淘口令 编辑:程序博客网 时间:2024/06/05 04:57

1、String类被final修饰,所以一旦创建了对象,对象不是能被改变的。

2、栈、堆、常量池
① 栈:存放基本数据类型的变量和对象的引用,对象存在堆内存中(new出来的对象)或者常量池中(通过“”号创建的字符串常量)
② 堆:所有new 出来的对象。
③常量池:存放字符串常量和基本类型常量。

3、String的创建
①String s1=”zhangrui”;
分析:首先去常量池里面去寻找是否存在“zhangrui”这个常量,若存在直接把这个对象的引用赋值给s1,若不存在则在常量池里面创建一个“zhangrui”。
②String s2 = new String(“zhangrui”);
分析:依然是先去常量池里面寻找是否存在“zhangrui”,若存在,直接在堆内存(new对象)中创建对象,若不存在,先在常量池中创建“zhangrui”对象,再在堆内存中创建“zhangrui”对象,这里创建了两个对象。

4、String常用的方法
①equals(): 重写了object的equals方法,判断的是两个字符串对象的内容是否相同。
②length(): 字符串的长度。
③toCharArray(): 将字符串转化为char类型的数组。
④split(String): 将字符串按指定的方式分割成数组。
⑤substring(int): 从指定的位置开始一直截取到最后一位。
⑥subString(int,int): 从下标x截取到y-1下标。
⑦replace(String,String): 将指定内容全部替换成指定内容。
⑧replaceAll(String,String): 如⑦且支持正则。
⑨indext(Sting): 得到指定内容出现第一次的索引。
⑩charAt(int): 得到指定索引的字符。
⑾tirm():去除一个字符串的前后空格。
⑿toUpperCase():全部大写。
⒀toLowerCase():全部小写。
⒁contains(String):判断是否存在指定字符。
⒂startsWith(String):判断字符串是否以指定字符开始。
⒃endsWith(String):判断字符串是否以指定字符结尾。