【问题标题】:java printing an array with Arrays.toString() errorjava打印带有Arrays.toString()错误的数组
【发布时间】:2012-10-16 14:36:09
【问题描述】:

所以我试图在我的程序中打印一个整数数组,并按照这些说明What's the simplest way to print a Java array?

写了如下代码:

    int[] totals = //method that returns int array
    System.out.println(Arrays.toString(totals));

但是这样说不会编译

" 类 Object 中的 toString 方法不能应用于给定类型。 必需:无参数 找到:int[] 原因:实际参数列表和形式参数列表的长度不同”

为什么要这样做?我不将我的数组作为参数传递给 toString 吗?如果没有,如何使用 toString?

谢谢!

【问题讨论】:

  • 对我来说看起来不错。使用这样的数组进行测试:int[] totals = { 1, 2, 3, 4 };
  • 您是否收到任何其他编译器错误或警告?
  • 不,我没有收到任何其他错误。但是下面的两个答案帮助了我。我的主类被命名为 Arrays(neubie 错误),所以当我编写 Arrays.toString(totals) 时,我对引用的内容感到困惑。感谢您的反馈!

标签: java arrays tostring


【解决方案1】:

Object 类中的 toString 方法不能应用于给定类型。必需:未找到参数:int[] 原因:实际参数列表和形式参数列表的长度不同

可能是您有一个名为Arrays 的变量,这就是为什么编译器抱怨您正在尝试调用Object.toString(),它不带任何参数。

试试

 System.out.println(java.util.Arrays.toString(totals)); 

【讨论】:

  • 也许您有一个名为 Arrays 的变量?常见的!我的回答是不赞成投票:)
  • 正如我刚才在上面评论的那样,我为这个程序数组调用了类,所以可能就是这样。感谢您的反馈!
  • 也感谢您提供的解决方法!我使用它而不必重命名该类。像魅力一样工作!
【解决方案2】:

它说“Object 类中的方法 toString 不能应用于给定类型”。让我觉得您可能没有正确导入 java.util.Arrays 类,或者您还有其他一些名为 Arrays 的对象。

【讨论】:

  • 或更确切地说:他有一个名为Arrays:Object Arrays = null变量
  • 我为这个程序数组调用了类。一定是这样,所以我将重命名该类。谢谢!
【解决方案3】:

这对我有用:

int[] totals = {1,2};
System.out.println(Arrays.toString(totals));

印刷:

[1, 2]

您确定至少使用 JDK 5 吗?

确实,Arrays.toString(int[] a) 只存在于 JDK 5 之后。

【讨论】:

    【解决方案4】:

    你为什么不试试 ::

    int[] totals = //method that returns int array
        System.out.println(totals.toString());
    

    【讨论】:

    • toString() 在数组上不会做任何有用的事情:它只是打印数组的引用。 OP 想要使用 Arrays 类来打印每个值。
    • 如果您对数组尝试此操作:它将打印逗号分隔的数据
    • 是的,在发布这个问题之前我也试过这个,它打印了内存地址。
    【解决方案5】:

    你的方法似乎没有初始化你的数组,试试这个:

    int[] totals = new int[10]; //method that returns int array
    System.out.println(Arrays.toString(totals));
    

    【讨论】:

    • 如果数组没有被初始化,我不会期望参数异常。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-16
    • 2016-08-13
    • 2018-04-18
    • 1970-01-01
    • 1970-01-01
    • 2022-11-11
    • 1970-01-01
    相关资源
    最近更新 更多