Java“参数"在方法签名中? [英] Java "params" in method signature?

查看:30
本文介绍了Java“参数"在方法签名中?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在C#中,如果你想让一个方法有一个不确定数量的参数,你可以将方法签名中的最后一个参数设为params,这样方法参数看起来像一个数组,但允许每个人使用该方法根据调用者的需要传递尽可能多的该类型的参数.

In C#, if you want a method to have an indeterminate number of parameters, you can make the final parameter in the method signature a params so that the method parameter looks like an array but allows everyone using the method to pass as many parameters of that type as the caller wants.

我相当确定 Java 支持类似的行为,但我不知道如何去做.

I'm fairly sure Java supports similar behaviour, but I cant find out how to do it.

推荐答案

在 Java 中,它被称为 varargs,语法看起来像一个常规参数,但在类型后面有一个省略号(..."):

In Java it's called varargs, and the syntax looks like a regular parameter, but with an ellipsis ("...") after the type:

public void foo(Object... bar) {
    for (Object baz : bar) {
        System.out.println(baz.toString());
    }
}

vararg 参数必须始终是方法签名中的最后参数,并且可以像您收到该类型的数组一样访问(例如 Object[] 在这种情况下).

The vararg parameter must always be the last parameter in the method signature, and is accessed as if you received an array of that type (e.g. Object[] in this case).

这篇关于Java“参数"在方法签名中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆