我想创建一个字母表的字符数组。我看了这篇文章:
Better way to generate array of all letters in the alphabet
其中说道:
char[] 字母表 = "abcdefghijklmnopqrstuvwxyz".toCharArray();
所以在我的代码中我有:
public class Alphabet {
private char[] letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
public String availableLetters(){
return letters.toString();
}
}
当我从 main() 调用函数 availableLetters() 并将其打印到控制台时,它会输出以下垃圾:
[C@15db9742
我做错了什么?
最佳答案
数组是正确的,问题是您没有正确打印它。
如果一次打印一个字符数组,您将得到正确的结果:
for (char c : letters) {
System.out.print("'" + c + "' ");
}
不幸的是,Java 标准类库没有为数组提供有意义的 toString()
重写,这给刚接触该语言的程序员带来了很多麻烦。
关于java - 使用 toCharArray() 的字符串文字在 Java 中产生垃圾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36950654/