Java vararg对象...具有混合数据类型

时间:2018-03-08 03:04:26

标签: java

如何从Java中的混合类型Object ... vararg中提取值?

例如

对象... args传递一个int,一个字符串和一个Date,如下面的

Hello(5, "Hello", Date.now);

Hello(Object... args) {...}

1 个答案:

答案 0 :(得分:2)

我不建议这样做,但自从你问:

public void Hello(Object... args) {
    ...
}

args.length是传递的参数数量。

args[0]是传递的第一个参数。依此类推args[args.length - 1]。在你施放它们之前,每个都是Object

在现实生活中这样做的问题在于,未来的开发人员编写代码来调用您的方法几乎可以保证会出错。您没有提供类型安全或任何机制,以确保他们无法正确调用该方法。进一步解释here