如何在java方法中将数组作为参数传递?

如何在java方法中将数组作为参数传递?,第1张

如何在java方法中将数组作为参数传递?

因为

{ myObject}
语法是特殊的语法糖,仅在初始化数组变量时才适用。这是因为任务本身缺少类型信息;但是在赋值的特殊情况下,类型是从变量中完全推断出来的。

在第一个示例中,编译器知道您要分配给它

a
(是
Object[]
),因此允许使用此语法。在后者中,您无需初始化变量(并且由于Java类型推断的弱点,它甚至也无法完全计算出参数分配的上下文)。因此,即使它可以明确确定这就是您要执行的 *** 作(而不是例如声明一个块),它也不知道数组应该是什么类型。

呼唤

someMethod ( new Object[] { myObject } )

如果您想在不使用变量的情况下就地定义数组,将可以工作。


虽然上面的内容按要求回答了您的问题,但我注意到您正在调用的方法是
varargs,

而不是显式要求使用数组参数。因此,在这种情况下,您只需致电

someMethod(myObject);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5429012.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存