创建字符串对象的六种方法(java)
package javaBasic;
public class StringConstruction {
public static void main(String[] args) {
String str0 = new String("HelloJava");//0.String(String original)初始化新创建的String对象,使其表示与参数相同的字符序列; 换句话说,新创建的字符串是参数字符串的副本。
char chars1[] = {'j','a','v','a'};
char chars2[] = {'H','e','l','l','o','j','a','v','a'};
String str11 = new String(chars1);//①String(char[] value)分配一个新的 String ,以便它表示当前包含在字符数组参数中的字符序列。
String str12 = new String(chars2,5,4);
/*②String(char[] value, int offset, int count)分配一个新的 String ,其中包含字符数组参数的子阵列中的字符。
用指定范围的字符数组赋值给str2*/
byte asc1[] = {106,97,118,97};
byte asc2[] = {72,101,108,108,111,106,97,118,97};
String str21 = new String(asc1);//③String(byte[] bytes)通过使用平台的默认字符集解码指定的字节数组来构造新的 String 。
String str22 = new String(asc2,5,4);//④String(byte[] bytes, int offset, int length)使用平台的默认字符集解码指定的字节子阵列来构造新的 String 。
String str31 = new String();//String()初始化新创建的 String对象,使其表示空字符序列。
StringBuffer sb = new StringBuffer("HelloJava");
String str32 = new String(sb);
System.out.println("str0:"+str0);
System.out.println("str11:"+str11);
System.out.println("str12:"+str12);
System.out.println("str21:"+str21);
System.out.println("str22:"+str22);
System.out.println("str31:"+str31);
System.out.println("str32:"+str32);
}
}