String s = "abcd";
String s1 = "sgdsssssssd";
boolean b = s.equals(s1);比较字符串的内容是否相同,区分大小写
boolean b = s.equalsIgnoreCase(s1);比较字符串的内容是否相同,忽略大小写;
boolean b=s.contains(s1);判断大字符串中是否包含小字符串;
boolean b = s.startsWith(s1);判断字符串是否以某个指定的字符串开头
boolean b = s.endsWith(s1);判断字符串是否以指定的字符串结尾
boolean b = s.isEmpty();判断字符串是否为空.
""和null的区别:
""是字符串常量,同时也是一个String类的对象,既然是对象当然可以调用String类中的方法.
null是空常量,不能调用任何的方法,否则会出现空指针异常,null常量可以给任意的引用数据类型赋值.
int i = s.length();获取字符串的长度
char c = s,charAt(int index);获取指定索引位置的字符\
int i =s.indexOf('a');返回指定字符在此字符串中第一次出现处的索引
int i =s.indexOf("avc");返回指定字符串在此字符串中第一次出现的索引;
itn i = s.indexOf('a',4);返回指定字符在此字符串中从指定位置后第一次出现的位置
int i = s.intdexOf("avc",2);返回指定字符在此字符串中从指定位置后第一次出现的位置
反之:lastIndexOf();
String s = substring(2);从指定位置开始截取字符串,默认到结尾
String s = substring(2,5);从指定 位置开始截取到指定位置结束截取字符串;
byte[]arr=s.getBytes();把字符串转为字节数组
char[]arr=s.toCharArray();把字符串转为字符数组,
String s = string.valueOf(char[]arr);把字符数组转成字符串
String s = string .valueOf(int i);把int类型的数据转成字符串
String 类的valueOf方法可以把任意类型的数据转成字符串;
String str = s.replace('a','d');用一个新的字符把旧的字符替换掉;
String str = s.replace("abc","def");用一个新的字符串把旧的字符串替换掉;
String str = s.trim();去除字符串两边的空格;
int i = s.compareTo(s1);按字典顺序比较两个字符串,区分大小写
int i = s.compareTognoreCase(s1);按字典比较两个字符串的内容,不区分大小写;
StringBuffer :
StringBuffer sb = new StringBuffer();无参构造方法
int i = sb.capacity();返回当前容量;
int i = sb.length();返回长度(字符数).实际值
sb.append(string str);可以把任意类型的数据添加到字符串缓冲区里面,并返回字符串缓冲区本身
sb.insert(int offset, String str);在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身
StringBuffer是字符串缓冲区,当new 的时候是在堆内存创建了一个对象,底层是一个长度为16的字符数组.当调用添加的方法时,不会再重新创建对象,在不断向原缓冲区添加字符;
sb.deleteCharAt(int index);删除指定位置的字符,并返回本身
sb.delete(int start,int end);删除从指定位置开始到指定位置结束的内容,并返回本身
sb.replace(int start,int end,String str);从指定位置开始到指定位置用str替换;
sb.reverse();字符串反转;
String s = sb.substring(int start);从指定位置截取到结尾
String s = sb.substring( int start, int end) ;截取从指定位置开始到指定位置结束.包头不包尾
截取功能返回值类型不再是StringBuffer本身;
String=====>>>StringBuffer
通过构造方法; 通过append()方法
SttringBuffer==========>>>String
通过构造方法. 通过toString()方法. 通过subString(0,length); |
|