java - 为什么代码在选项卡上表现不正常?

标签 java

char[] array = {'h','e','l','l','o','h','i','e',' '};
System.out.println(array+"\t"+array.length);//FIX THIS

打印:

[C@15db9742     9

但是如果我将代码更改为:

char[] array = {'h','e','l','l','o','h','i','e',' '};
System.out.println(array);//FIX THIS

打印:

hellohie

为什么我不能将制表符和数字串联起来?因为以下代码运行良好:

String array1 =  new String(array);
System.out.println(array1+'\t'+array1.length());

最佳答案

PrintWriter

它有多个 println 方法,当您尝试 System.out.println(array) 时,它会调用 char 数组作为论点,这就是它打印得很好的原因。当您尝试调用不同的版本时,它不知道您希望它对该数组做什么,这就是它不能很好地打印的原因。 Tab 与此无关。

例如,您可以执行 System.out.println(Arrays.toString(array)+"\t"+whatever),或者像您一样将其转换为 String,或者很多其他解决方案。

关于java - 为什么代码在选项卡上表现不正常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39995243/

相关文章:

java - IceFaces 将其 CSS 和 JavaScript 资源放在每个页面上,无论它们是否使用 Ice 组件。有办法阻止这个吗?

java - 如何在Java中使用PKCS#11 CKM_AES_KEY_WRAP机制?

java - Python/Selenium - 无法获取标签的 HREF 值

java - 如何初始化用户输入的对象数组的字符串值?

Java 8 功能接口(interface)对象的 Java Hashcode 和 Equals

java - 从二进制文件中读取结构化数据 -?

java - 如何设置来自不同类的 TextView 文本?

java - 尝试运行 Weld Se 应用程序时出错 - 无法初始化 Weld SE 容器 - 找不到 bean 文件

java - 具有监控功能的调度程序

java - JDBC 和 Oracle 数据库 : Escape ' (single quote)