String类型的字符串也可以看做一个对象 字符串是一个常量,一旦被赋值就能被改变 String() 空参构造 Sting(byte[] byte)将字节数组转换成字符串 String(byte[]) byte,int index,int length)将字节数组从 index索引开始 转换length个 String(char[] value)把字符数组转换成字符串 String(char[] value,int index,int length)将字符数组从 index索引开始 转换length个 String(String original):把字符串常量值转成字符串 equals(Object obj)比较字符串内容是否相同 equalsIgnoreCase(String str)同上,不分大小写 contains(String str) 判断大字符串是否包含小字符串 startsWith(String str)判断是否以某个指定的字符串开头 endsWith(String str)判断是否以某个指定的字符串结尾 isEmpty()判断字符串是否为空 ""是字符串常量,也是String类对象,可以调用String类的方法 nulls是空常量不能调用任何方法,否则会出现空指针异常,可以给任意引用数据类型赋值 前面是返回值类型 int length()获取字符串的长度 char charAt(int index)获取指定索引的位置的字符, 可能会角标越界 int indexOf(int ch):返回指定字符在此字符串中第一次出现的索引,char类型输入会自动提升 int indexOf(String str):返回指定字符串在此字符串中第一次出现处的索引 int indexOf(int ch,int fromIndex):返回指定字符在此字符串中从指定位置后第一次出现的索引 int indexOf(String str,int fromIndex):返回指定字符串在此字符串中从指定位置后第一次出现处的索引 lastIndexOf 从后往前找 String substring(int start):从指定位置开始截取字符串,默认到末尾 String substring(int start,int end):从指定位置开始到指定位置结束截取字符串, 含头不含尾 前面是返回值类型 byte[] getBytes()把字符串转换成字节数组 gbk码表中:一个中文代表两个字节,中文的第一个字节肯定是负数 char[] toCharArray()把字符串转换成字符数组 static String valueOf(char[] chs)把字符数组转换成字符串 static String valueOf(int i)把int类型数据转换成字符串 注意:String类的valueOf方法可以把任意类型的数据转换成字符串 String toLowerCase()把字符串转换成小写 String toUpperCase()把字符串转换成大写 String concat(String str)把字符串拼接 但是用 + 更强大 String replace(char old,char new)把旧的字符替换成新的字符 String replace(String old,String new)把旧的字符串替换成新的字符串 String trim()去除两端空格 int compareTo(String str)按字典顺序比较两个字符串 (大的减去小的) int compareToIgnoreCase(String str)不分大小写 String Arrays.toString(数组)返回指定数组内容的字符串表示形式 Arrays.sort(数组)对指定数组升序排序 Arrays.binarySearch(数组,查找的数)使用折半在数组中查找数 StringBuffer() 无参构造 StringBuffer(int capacity)指定字符串缓冲区容量 StringBuffer(String str)指定字符串缓冲区对象 int capacity()返回字符串缓冲区容量 int length()返回长度(字符数) StringBuffer append(Sting str)向字符串缓冲区中添加任意类型数据,返回字符串缓冲区本身 StringBuffer insert(int offset,String str)在指定位置插入任意类型数据,并返还本身 StringBuffer delete(int index)删除指定位置的字符,并返还本身 StringBuffer delete(int start,int ends)删除从开始到结束的字符,并返还本身 StringBuffer replace(int start,int ends,String str)替换从开始到结束 StringBuffer reverse()字符串反转 String substring(int start);截取从开始到末尾 String substring(int start,int end)截取从开始到结束 含头不含尾 String转StringBuffer 可以通过空参构造 或者 append() StringBuffer转String 可以通过toString() 或者 subString(0,length) 注意,在作为参数传递时注意是否有被原对象接收并替换 String值是不变的,引用会变 StringBuffer内的字符是可变的,即使不用引用接收,内容还是可变 StringBuffer和StringBuilder区别 1.0 , 1.5 安全 效率低 , 不安全 效率高 StringBuffer是字符串缓冲区,当new的时候是在堆内存创建了一个对象,底层是一个长度为16的字符数组
|