如何把char数组转换成String
把char数组转换成String
调用reverseStr()传入一个字符串"let’s"
public String reverseStr(String s) {
int left = 0, right = s.length() - 1;
char[] chs = s.toCharArray();
System.out.println(chs);
while (left < right) {
char temp = chs[right];
chs[right] = chs[left];
chs[left] = temp;
left++;
right--;
}
return chs.toString();
}
输出结果
[C@135fbaa4
分析原因
- Java中,toString方法,会打印出“类名@他的hashCode值”这样的一个字符串。
- 而我想要的是把char数组转换成String
- 应该使用String.valueOf()方法
再次测试
s'tel
String.valueOf(char[] data) : 将 char 数组 data 转换成字符串
将传入的数组转为String型,存入数据库。去掉空格和括号[]
将传入的数组转为String,存入数据库。去掉空格和括号的标准写法:
//无空格,无括号
String s3 = StringUtils.join(arr,",");
System.err.println(s3);//41,a,5,g56
其他写法:
public static void main(String[] args) {
//有空格和括号
String [] arr = {“41”,“a”,“5”,“g56”};
String s1 = Arrays.toString(arr);
System.err.println(s1);//[41, a, 5, g56]
//无空格,无括号,无逗号
String s2 = StringUtils.join(arr);
System.err.println(s2);//41a5g56
//无空格,无括号,无逗号
StringBuffer s4 = new StringBuffer();
for (String string : arr) {
s4.append(string);
}
System.err.println(s4.toString());//41a5g56
}
另:java分割包含有多个空格的字符串
String s = "Rita Love code"
正确写法
String [] arr = str.split("\\s+");
for(String ss : arr){
System.out.println(ss);
}
错误写法
String[] arr2 = str.split(" ");
for (String ss : arr2) {
System.out.println(ss);
}
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关文章