JAVA常用类---String

 在平时的编程中,用到的字符串很多,因此在String类型涉及到功能也很多。

 

常用构造器,多数为变型形式、

1.空构造器 new出来的String为“”,打印显示出来非NULL

JAVA常用类---String_第1张图片

2.把参数里的字符串变成构造器对象

3.二进制的数据转化为String 读取文件时使用

4.通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。

5.String(byte[] bytes, int offset, int length offset, int length)

通过使用平台的默认字符集解码指定的 byte 子数组,构造一个 新的 String。

6.通过使用指定的 charset 解码指定的 byte 子数组,构造一个新 的 String。

7.通过使用指定的字符集解码指定的 byte 子数组,构造一个新的 String。

可能会抛出异常,需要 trycatch

8.String(byte[] bytes, int offset, int length) 截取中间字符串的某一段

9 10可以理解成8的变式

截取某一段字符后通过使用指定的 charset 解码指定的 byte 子数组,构造一个新 的 String。

11 字符数组转化为字符串 好比拼接字符串

12截断(0,0)指定位置的字符串

 

 

 

判断

equals(Object obj) 比较字符串的内容是否相同,区分大小写

equalsIgnoreCase(String str) 比较字符串的内容是否相同,忽略大小写

contains(String str) 判断大字符串中是否包含小字符串

startsWith(String str) 判断字符串是否以某个指定的字符串开头

endsWith(String str) 判断字符串是否以某个指定的字符串结尾

isEmpty() 判断字符串是否为空。判断的是空字符串“” 而不是NULL值

判断String不为空的例句

 public static boolean stringNotNull(String str) {    

     if (str != null && !str.isEmpty()) {         

    return true;      

   }    

     return false;  

   }

 

获取查询

 

length() 获取字符串的长度。

char charAt(int index) 获取指定索引位置的字符

indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引。

indexOf(int ch,int fromIndex) 从前向后

返回在此字符串中第一次出现指定字符处的索引,从指定的 索引开始搜索。

indexOf(String str) 返回指定子字符串在此字符串中第一次出现处的索引。(小字符串在大字符串出现的位置) 从后向前

indexOf(String str,int fromIndex)

返回指定子字符串在此字符串中第一次出现处的索引,从指 定的索引开始。

lastIndexOf(int ch) 返回指定字符在此字符串中后一次出现处的索引。

lastIndexOf(int ch,int fromIndex)

返回指定字符在此字符串中后一次出现处的索引,从指定 的索引处开始进行反向搜索。

lastIndexOf(String str) 返回指定子字符串在此字符串中右边出现处的索引。

lastIndexOf(String str,int fromIndex)

返回指定子字符串在此字符串中后一次出现处的索引,从 指定的索引开始反向搜索。

String substring(int start) 从指定位置开始截取字符串,默认到末尾。

String substring(int start,int end) 从指定位置开始到指定位置结束截取字符串。

 

转换

getBytes() 把字符串转换为字节数组。

char[] toCharArray() 把字符串转换为字符数组。

String valueOf() 把传入的变量转成字符串。

toLowerCase() 把字符串转成小写。

toUpperCase() 把字符串转成大写。

concat(String str) 把字符串拼接。基本不用,用+取代

+会拖慢速度 String对象不可改变,如果修改,内部会进行释放原来对象的过程,多数字符串的拼接时不建议+不用+,我们可以用append来拼接,转成字符串还需要在打印时System.out.println(sb.toString());

insert 向指定位置插入字符串

sb.insert(0, "hello "); (索引,要插入的字符串);

repace 替换 eg sb.replace(5, 7, ", j"); // sb="hello, java" [5,7)

delete删除

反转 reverse

System.out.println(sb.length());

// capacity() 输出 StringBuffer\StringBuilder的容量

System.out.println("----capacity----");

System.out.println(sb.capacity());

容器未被字符串填满时,长度>字符串长度。 填满后,容器的长度随字符串的长度增加而增加

改变StringBuilder的长度,将只保留前面部分(截断的意思,重新设置字符串的长度)

System.out.println("----setLength----");

sb.setLength(21);

replace(char old,char new)

返回一个新的字符串,它是通过用 newChar 替换此字符串中 出现的所有 oldChar 得到的。

//===转换

// String ---> StringBuilder/StringBuffer

转换的实现过程 在NEW的时候放入Str eg:

String str = "111111";

StringBuilder sb1 = new StringBuilder(str);

StringBuffer stringBuffer = new StringBuffer(str);

反过来转换就是在原来的基础上ToString来转换类型

replace(String old,String new)使用指定的字面值替换序列替换此字符串所有匹配字面值目 标序列的子字符串。

trim() 返回字符串的副本,忽略前导空白和尾部空白。

compareTo(String str) 按字典顺序比较两个字符串。

compareToIgnoreCas e(String str) 按字典顺序比较两个字符串,不考虑大小写。

split(String regex) 根据给定正则表达式的匹配拆分此字符串。

split(String regex,int limit)根据匹配给定的正则表达式来拆分此字符串。

你可能感兴趣的:(JAVA)