gpt4 book ai didi

Java println(charArray + String) 与 println(charArray)

转载 作者:搜寻专家 更新时间:2023-10-31 19:32:51 26 4
gpt4 key购买 nike

我有

char c1 = 'S';           // S as a character
char c2 = '\u0068'; // h in Unicode
char c3 = 0x0065; // e in hexadecimal
char c4 = 0154; // l in octal
char c5 = (char) 131170; // b, casted (131170-131072=121)
char c6 = (char) 131193; // y, casted (131193-131072=121)
char c7 = '\''; // ' apostrophe special character
char c8 = 's'; // s as a character
char[] autoDesignerArray = {c1, c2, c3, c4, c5, c6, c7, c8};

System.out.println(autoDesignerArray + "Mustang"); 

输出:[C@c17164Mustang

System.out.println(autoDesignerArray);

输出:谢尔比的

我不明白为什么在将 char 数组与字符串连接时会得到奇怪的输出。什么是“[C@c17164”?内存中的位置?为什么当我连接一个字符串时得到它,但当我单独打印它时却得到我期望的结果?

最佳答案

表达式 System.out.println(X + Y) 等于表达式System.out.println(X.toString() + Y.toString())

当您调用 System.out.println(autoDesignerArray + "Mustang") autoDesignerArray.toString()(即 [C@c17164") 与 "Mustang" 连接并打印结果。

关于Java println(charArray + String) 与 println(charArray),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29415075/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com