3、ava.lang.String)publicjava.lang.String(char[])publicjava.lang.String(char[],int,int)publicjava.lang.String(byte[],int,int,int)publicjava.lang.String(byte[],int)publicjava.lang.String(byte[],int,int,java.lang.String)throwsjava.io.UnsupportedEncodingExceptionpubl
4、icjava.lang.String(byte[],java.lang.String)throwsjava.io.UnsupportedEncodingExceptionpublicjava.lang.String(byte[],int,int)publicjava.lang.String(byte[])publicjava.lang.String(java.lang.StringBuffer)构建器名前面的“java.lang”是该类所在的包名,在后面的叙述中都略去。下面对它们一一进行研究。1无参构建器String
5、()它创建一个空字符串。2用一个现有的字符串来创建新对象。一般格式为String(字符串参数),参数有三种形式:字符串常量,String类变量或StringBuffer类变量。例如Strings=newString("abc");Strings1=newString(s);StringBuffersb=newStringBuffer("hello");Strings3=newString(sb);3用字符型数组来创建新对象。这有两种情况,分别为:String(char[])和String(char[],intoffs
6、et,intlength)offset表示起始位置,length表示字符个数或生成的长度。例如:char[]charArray={'H','e','l','l','o'};Strings1=newString(charArray);Strings2=newString({'H','e','l','l','o'});char[]charArray={'H','e','l','l','o','J','a','v','a'};Strings3=newString(charArray,5,4);4用字节型数组来创建新对象。常
7、用的也是两种情况:String(byte[])和String(byte[],intoffset,intlength)offset表示起始位置,length表示字符个数或生成的长度。例如:byte[]bs=newbyte[26];for(inti=0;i<26;i++)bs[i]=(byte)(65+i);Strings1=newString(bs);Strings3=newString(bs,7,4);另外有参数为1个和3个整数的形式,那个参数可能表示代码页,因为我用0或37(代表中国大陆)时和不用一样,用其它数字时
8、就出乱码。String(byte[],int,int,String)String参数为字符集的名称。我用"gb2312"作参数时程序通过。这到以后再详细研究。例2String类常用构建器的用法。///publicclassStringConstructorsUsage{publicstaticvoidmain(Stringagrs[]){cha