一、Java 中的 StringBuilder 类的常用方法
append(参数):追加内容到当前StringBuilder对象的末尾
insert(位置,参数):将内容插入到StringBuilder对象的指定位置
toString():将StringBuilder对象转换为String对象
length():获取字符串的长度
toLowerCase():转换成小写
charAt(int i):获取索引为i的值
getBytes():转换为字节数组
indexOf(int ch):查找ch字符在该字符串第一次出现的位置
indexOf(String str):查找str字符串在该字符串第一次出现的位置
lastIndexOf(int ch):查找ch字符在该字符串最后一次出现的位置
lastIndexOf(String str):查找str字符串在该字符串最后一次出现的位置
split():将字符串拆分成子串;
1》StringBuilder对象的追加和插入操作
1 StringBuilder str=new StringBuilder("hello"); 2 str.append(" world"); 3 str.append("!"); 4 System.out.println(str.length()); 5 System.out.println(str);6 str.insert(12."!");7 Sting str2=str.toString();8 System.out.println("插入后:"+str2);
输出结果为:12
hello world!
插入后:hello world!!
注意:StringBuffer和StringBuilder 功能一样,但是StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。因此一般情况下,如果需要创建一个内容可变的字符串对象,应优先考虑使用 StringBuilder 类。
二、“==” 和 equals() 有什么区别呢?
==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象
equals(): 比较存储在两个字符串对象中的内容是否一致
1 String str1="i love you"; 2 String str2=new String("i love you"); 3 System.out.println("str1和str2的内存地址相同?"+(str1==str2)); 4 System.out.println("str1和str2的内容相同?"+str1.equals(str2));
输出结果:false
true
时间: 2024-10-11 21:52:36