【问题标题】:Is it possible to make a method that takes any number of arguments?是否有可能制作一个采用任意数量参数的方法?
【发布时间】:2015-10-15 20:55:59
【问题描述】:

我在这里查看了另一篇帖子,该帖子描述似乎是我的 问题How to make a method which accepts any number of arguments of any type in Java?

然而,当我尝试执行此方法时,当我编译程序时它给了我错误 "int cannot转换为 java.util.Objects"

我做错了什么?

代码:

public static void clearArray (Objects... args)
{
    System.out.println("Error, non character value");
}

我是如何调用函数的:

import java.util.Objects;
// Stuff...
clearArray(1);
// Other stuff...

感谢您查看我的问题!

【问题讨论】:

  • 感谢您的努力,但您无需编辑问题即可提供答案。奖励最佳答案的最佳方式是接受并投票。 :) 祝你代码好运
  • 好吧:)。谢谢,它做了它应该做的事情,这总是一种奖励。

标签: java


【解决方案1】:

看签名

public static void clearArray (Objects... args)

该方法接收对象类型,并且您将整数传递给它。也许将其更改为

public static void clearArray (Object... args)

帮助。

【讨论】:

    【解决方案2】:

    你想要java.lang.Object,而不是java.util.Objects

    java.util.Objects 是一个具有实用方法的类,而不是您可以实际扩展和实例化的类。

    另一方面,java.lang.Object 是 Java 中所有对象的超类。

    即使在多参数(可变参数)方法中,签名也必须是Object ...,而不是Objects ...

    【讨论】:

    • @RileyCarney 没有问题。我们大多数人都做得更糟:-)
    猜你喜欢
    • 2020-06-06
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多