今天写作业,写到有一个char,调用并返回String类型,完了之后我想这个还不简单吗。于是信笔写下

1
2
char[] chars = { 'H', 'o', 'w', ' ', 'A', 'r', 'e', ' ', 'Y', 'o', 'u' };
System.out.println(chars.toString());

然而却只能打印出一串奇怪的字符串

1
[C@7852e922

如果要是单纯打印的话就算了,可以用以下语句

1
2
char[] chars = { 'H', 'o', 'w', ' ', 'A', 'r', 'e', ' ', 'Y', 'o', 'u' };
System.out.println(chars);

但是当下是要返回一个字符串类型

于是就有了以下语句可以转化为String

1
2
3
char[] chars = { 'H', 'o', 'w', ' ', 'A', 'r', 'e', ' ', 'Y', 'o', 'u' };
String string = Arrays.toString(chars);
System.out.println(string);

打印出来是这样子的

1
[H, o, w,  , A, r, e,  , Y, o, u]

要转化为完整字符串并打印出来How Are You该怎么办呢,
那就只能用String的一个构造函数来作用了

1
2
3
char[] chars = { 'H', 'o', 'w', ' ', 'A', 'r', 'e', ' ', 'Y', 'o', 'u' };
String string = new String(chars);
System.out.println(string);

或者用这个有点复杂的东西

1
2
3
4
5
6
char[] chars = { 'H', 'o', 'w', ' ', 'A', 'r', 'e', ' ', 'Y', 'o', 'u' };
String string = new String();
for (int i = 0; i < chars.length; i++) {
string += Character.toString(chars[i]);
}
System.out.println(string);

完成,如果有什么问题,请联系我,感谢大家的帮助