String类的一些转换功能(6)
1:把字符串转换成字节数组 getBytes() 如:
String s = "你好啊!"
//编码
byte [] arr = s.getBytes();//这里默认编码格式是gbk2310 当然你也可以传一个编码格式,但是解码时候也要传
for(int i =0;i<arr.length;i++){
System.out.print(arr[i]+" "); //这里输出的是对应GBK编码表的编码
}
//解码 通过String的构造函数来解码
String s = new String(arr);
System.out.print(s);//这里输出的就是 你好啊
注意:GBK中,一个中文等于2个字节,utf-8中,一个中文等于3个字节
2:把字符串转换成字符数组 toCharArray() 如:
String s = "你好啊!"
char [] arr = s.toCharArray();//这里
for(int i =0;i<arr.length;i++){
System.out.print(arr[i]+" "); //这里输出的是 你 好 啊 !
}
注意:一个中文就是等于一个字符,不要混淆了
3:将字符数组转换成对应的字符串 ValueOf()
char[] arr = {'a','b','b'};
String s = String.ValueOf(arr);
System.out.println(s);//输出就是abc
注意:String类的ValueOf()里面的参数可以是任何数据类型的 ,其实它的底层都是调用了String类的构造方法(解码)
4:把字符串转换成大小写 ToLowerCase() 和 ToUpperCase();
5:将字符串拼接 concat(String str)
String s1 = "abc";
String s2 = "abc";
String s3 = s2.concat(s1);
System.out.println(s3);//输出就是abcabc