引言:
String类
Arrays类
String String 类代表字符串。Java 程序中的所有 字符串字面值(如 “abc” )都作为此类的实例实现。
字符串是常量;它们的值在创建之后不能更改。字符串缓冲区 支持可变的字符串。因为 String 对象是不可变的,所以可以共享。
包路径:
构造方法: 1 2 3 4 5 6 7 public String () public String (char [] value) public String (byte [] bytes)
常用方法: 比较方法
1 2 3 4 5 6 7 public boolean equals (Object anObject) public boolean equalsIgnoreCase (String anotherString)
属性获取方法
1 2 3 4 5 6 7 public int length () public boolean isEmpty () public char charAt (int index) public int indexOf (String str)
裁剪方法
1 2 3 4 5 6 public String concat (String str) public String substring (int index) ;public String (intbegin,intend) ;
转换方法
1 2 3 4 5 6 public char [] toCharArray();public byte [] getBytes();public String replace (CharSequence oldString,CharSequence newString) ;
分割方法
1 2 public String[] split(String regex);
示例代码: 构造方法
1 2 3 4 5 6 7 8 9 10 11 12 13 String str1 = "hello" ; System.out.println(str1); String str2 = new String(); System.out.println(str2); char [] charArray = {'a' ,'w' ,'c' };String str3 = new String(charArray); System.out.println(str3); byte [] byteArray = {85 ,49 ,35 };String str4 = new String(byteArray); System.out.println(str4);
常用方法:
比较方法
1 2 3 4 5 6 7 8 9 10 11 String str1 = "hello" ; String str2 = "hello" ; char [] arr = {'h' ,'e' ,'l' ,'l' ,'o' };String str3 = new String(arr); String str4 = "HellO" ; System.out.println(str1==str2); System.out.println(str1==str3); System.out.println(str1.equals(str2)); System.out.println(str1.equals(str3)); System.out.println(str1.equalsIgnoreCase(str4));
属性获取方法
1 2 3 System.out.println(str1.length()); System.out.println(str1.charAt(3 )); System.out.println(str1.indexOf("h" ));
裁剪方法
1 2 3 4 5 6 7 8 9 10 String str1 = "hello" ; String str2 = "hello" ; str1.concat(str2); "你好" .concat(str1);str1.substring(2 ); str1.substring(2 ,4 );
转换方法
1 2 3 4 5 6 String str1 = "hello" ; char [] arr1 = str1.toCharArray(); byte [] arr2 = str1.getBytes(); String str2 = str1.replace('l' ,'w' );
分割方法
1 2 3 4 5 String str1 = "he,l,lo" ; String[] str2 = str1.split("," ); for (int i = 0 ; i < str2.length; i++) { System.out.println(str2[i]); }
字符串常量池 在java虚拟机堆中,字符串有一个专门的常量池
直接写上双引号的字符串,就在字符串常量池中
new创建的字符串不在常量池内
对于引用类型来说,等于号是对地址进行的比较
特点:
字符串的内容不可以改变
字符串内部是可以共享使用的,相同加了双引号的字符串,如果内容都相同,他的地址也是来自一块地址的
字符串的底层原理是byte字节数组
Arrays 用来操作数组(比如排序和搜索)的各种方法
包路径
构造方法 所有的数组都可以使用这个类的方法
常用方法 1 2 3 4 5 public static String toString (int [] a) public static void sort (int [] a)
示例代码 1 2 3 4 5 6 int [] arr = {3 ,8 ,2 ,1 };String str = Arrays.toString(arr); System.out.println(str); Arrays.sort(arr); System.out.println(Arrays.toString(arr));