如何将char数组转换回字符串?

2022-01-12 00:00:00 string arrays char java

我有一个字符数组:

char[] a = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};

我目前的解决方案是做

String b = new String(a);

但肯定有更好的方法吗?

But surely there is a better way of doing this?

推荐答案

不,这个解决方案是绝对正确的,而且非常少.

No, that solution is absolutely correct and very minimal.

但是请注意,这是一种非常不寻常的情况:因为 String 在 Java 中是专门处理的,所以即使 "foo" 实际上也是一个 String.因此,在普通代码中不需要将字符串拆分为单独的 char 并将它们重新连接起来.

Note however, that this is a very unusual situation: Because String is handled specially in Java, even "foo" is actually a String. So the need for splitting a String into individual chars and join them back is not required in normal code.

将此与 C/C++ 进行比较,其中 "foo" 您有一束 char 以一侧的零字节和 string 另一方面,它们之间的许多转换都使用旧方法.

Compare this to C/C++ where "foo" you have a bundle of chars terminated by a zero byte on one side and string on the other side and many conversions between them due do legacy methods.

相关文章