String、StringBuilder和StringBuffer
String是不可变的字符序列,StringBuilder和StringBuffer是可变序列。
StringBuffer:JDK1.0提供,线程安全,做线程同步检查,效率低;
StringBuilder:JDK1.5提供,线程不安全,不做线程同步检查,效率高。
String中简单的方法
str.length() //输出字符串的长度 字符的个数
str3.isEmpty() //判断字符串是否为空
str.startsWith("b") //判断字符串是XX开始的
str.endsWith("t") //判断字符串是XX结束的
str.toUpperCase() //把字符串内容转换成大写(只有英文可以使用)
str.toLowerCase() //把字符串内容转换成小写(只有英文可以使用)
String中常用的方法
str.charAt(1) //根据下标去找字符串中的内容
str.substring(1,4) //截取指定字符串 [开始下标,结束下标)
str.substring(2) //截取指定字符串 [开始下标) 一直截取到字符串结束
str.indexOf("j") //返回第一个字符的下标
str.indexOf("j",2) //从指定的下标开始查询元素
str.lastIndexOf("j") //从后向前查找元素
str.getBytes() //把String类型的数据转成byte数组
str.contains("bj") //判断字符串中是否包含某些词汇
str.replace("bj","abc")
str.replaceAll("bj","bdg") //全部的替换
str.trim() //去除字符串中前后的空格
str2.split("-") //根据某个字符进行字符串的分割,注意返回值是一个String的数组
str3.concat("bj");//字符串的拼接 相当于 +
str4.compareTo(str5)
str4.compareToIgnoreCase(str5)//比较字符串的大小忽略大小写
StringBuilder类中常用的方法
stringBuilder.append("123");//追加在当前字符串之后
stringBuilder.insert(2,"zmr");//在指定下标位置插入字符串
stringBuilder.setCharAt(3,'a');//在指定下标位置替换字符
stringBuilder.replace(3,4,"55"); //指定下标进行字符的替换
stringBuilder.deleteCharAt(3); //删除指定下标的字符
stringBuilder.delete(3,4);//删除指定范围的字符
stringBuilder.reverse();//字符串的反转
//把String类型的数据转成StringBuilder
StringBuilder stringBuilder1 = new StringBuilder(str);
//StringBuilder类型的数据转成String
String s = stringBuilder1.toString();
StringBuilder类和StringBuffer类方法几乎一样