String类的概述
字符串是由多个字符组成的一串数据(字符序列)
字符串可以看成是字符数组
构造方法
public String ()//空构造
public String (byte[] bytes)//把字节数组转为字符串
public String(byte[] bytes,int index ,int length)//把字节数组的一部分转为字符数组
public String(char[] value)//把字符数组转为字符串
public String(char[] value,int index , int count)//把字符数组的一部分转为字符串
public String (String original)//把字符串常量转为字符串
String的特点,字符串是常量,一旦被赋值就不能被改变
public Strng();空构造
class Test{
public static void main(String[] args){
String s1 = new String();
System.out.println("s1:"+s1);//
System.out.println("s1.length:"+s1.length());//0
//第一个输出结果为s1:
//第二个输出结果为s1.length:0
//说明方法重写了
}
}
public String(byte[] bytes);
把字节数组转为字符串
class test{
public static void main(String[] args){
byte[] bys = {98,99,100,101,102};
String s1 = new String(bys);
System.out.println("s1:"+s1);
System.out.println("s1.length:"+s1.length());
//第一个输出结果:s1:bcdef 因为98代表ASCll中的b
//第二个输出结果:s1.length:5
}
}
public String(byte[] bytes,int index,int length);
把字节数组的一部分转为字符串
class test{
public static void main(String[] args){
//我想得到"bcd"这个字符串
byte[] b = {97,98,99,100,101,102,103,104,105};
String s1 = new String(b,1,3);
System.out.println("s1:"+s1);
System.out.println("s.length:"+s1.length());
//第一个输出结果:s1:bcd
//第二个输出结果:s1.length:3
//从输出结果来看,字节数组是0,1,2,3,4,5,6这样编号的
}
}
public String(char[] value);
把字符数组转化为字符串
class test{
public static void main(String[] args){
char[] c = {'a','b','c','d','e','好','青','年'};
String s1 = new String(c);
System.out.println("s1:"+s1);
System.out.println("s1.length:"+s1.length());
//第一个输出结果:s1:abcde好青年
//第二个输出结果:s1.length:8
}
}
public String(char[] value,int index , int count)
把字符数组的一部分转为字符串
class test{
public static void main(String[] args){
char[] c = {'a','b','c','d','e','好','青','年'};
String s1 = new String(c,1,3);
System.out.println("s1:"+s1);
System.out.println("s1.length:"+s1.length());
//第一个输出结果:s1:bcd
//第二个输出结果:s1.length:3
}
}