国外 设计 网站,wordpress站群 企业,建设网站网站名,天河网站建设开发String 和 StringBuffer、StringBuilder 的区别在于 String 声明的是不可变的对象#xff0c;每次操作都会生成新的 String 对象#xff0c;然后将指针指向新的 String 对象#xff0c;而 StringBuffer、StringBuilder 可以在原有对象的基础上进行操作#xff0c;所以在经常…String 和 StringBuffer、StringBuilder 的区别在于 String 声明的是不可变的对象每次操作都会生成新的 String 对象然后将指针指向新的 String 对象而 StringBuffer、StringBuilder 可以在原有对象的基础上进行操作所以在经常改变字符串内容的情况下最好不要使用 String。
StringBuffer 和 StringBuilder 最大的区别在于StringBuffer 是线程安全的它的方法是同步的可以在多线程环境中使用而不会出现数据竞争和不一致的问题。因为方法是同步的所以在多线程环境中使用StringBuffer会带来一些性能上的损失。 而StringBuilder 是非线程安全的它的方法没有进行同步不适合在多线程环境中使用。但是由于不需要进行同步StringBuilder在单线程环境下性能比StringBuffer更好。 String常用方法 /*** indexOf()返回指定字符的索引。* charAt()返回指定索引处的字符。* replace()字符串替换。* trim()去除字符串两端空白。* split()分割字符串返回一个分割后的字符串数组。* getBytes()返回字符串的 byte 类型数组。* length()返回字符串长度。* toLowerCase()将字符串转成小写字母。* toUpperCase()将字符串转成大写字符。* substring()截取字符串。* equals()字符串比较。* (); 字符串转换为char数组* contains(); 字符串是否包含指定的字符序列*/Testvoid testStringMethod(){String str abdcdeeFQ111rta ;System.out.println(返回r的索引 str.indexOf(r));System.out.println(返回3索引处的字符 str.charAt(3));str str.replaceFirst(a,z);System.out.println(一个字符串替换为z后 str);str str.trim();System.out.println(去除字符串两端空白 str);String[] strings str.split(ee);System.out.println(分割字符串返回一个分割后的字符串数组 strings[0]);byte[] bytes str.getBytes();System.out.print(返回字符串的 byte 类型数组:);for (byte b:bytes) {System.out.print( b);}System.out.println();System.out.println(返回字符串长度str.length());System.out.println(将字符串转成小写字母 str.toLowerCase());System.out.println(将字符串转成大写字符 str.toUpperCase());System.out.println(截取字符串从2到5的字符 str.substring(2,5));System.out.println(截取字符串从2到结束的字符 str.substring(2));System.out.println(字符串比较\aaa\是否和\bbb\相等 aaa.equals(bbb) );char[] chars str.toCharArray();System.out.println(字符串转换为char数组);System.out.println(字符串是否包含指定的字符序列: str.contains(111));}