我有一个char数组:
char[] a = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};我目前的解决方案是
String b = new String(a);但肯定有更好的方法来做到这一点?
发布于 2011-10-05 07:24:27
不,这个解决方案是绝对正确的,而且非常简单。
但是请注意,这是一种非常不寻常的情况:因为String是在Java语言中专门处理的,所以即使是"foo"实际上也是一个String。因此,在普通代码中,不需要将字符串拆分成单独的char,然后再将它们连接起来。
与C/C++相比,在C/C++中,"foo"的一侧是一堆以零字节结尾的char,另一侧是string,它们之间的许多转换都是使用遗留方法完成的。
发布于 2011-10-05 07:28:17
String text = String.copyValueOf(data);
或
String text = String.valueOf(data);
可以说更好(封装了new String调用)。
发布于 2013-10-11 03:56:38
这会将char数组转换回字符串:
char[] charArray = {'a', 'b', 'c'};
String str = String.valueOf(charArray);https://stackoverflow.com/questions/7655127
复制相似问题