什么是Object ...在方法参数中,我该如何使用它?

时间:2015-06-02 18:24:51

标签: java android

我想在java中使用一个方法。它的原型定义如下:

 public void fragmentRequestAction(Fragment fragment, int requestId, Object... objects)

我不知道Object...是什么我可以将这些项目传递给方法,我该如何使用它们?

1 个答案:

答案 0 :(得分:0)

Object...采用任何非基本类型和任何数字。在Java中,它被称为可变长度参数。

这意味着您可以像这样调用fragmentRequestAction()方法 -

fragmentRequestAction(fragment, 345); //no object here
fragmentRequestAction(fragment, 345, someObj);
fragmentRequestAction(fragment, 345, someObj1, someObj2);
fragmentRequestAction(fragment, 345, someObj1, someObj2, someObj3);  

从java 5中导入的可变长度参数。在使用可变长度参数构造函数时,需要记住一些规则。请参阅代码段 -

public void meth ( int... a) // valid
public void meth (double a, int... b) // valid
public void meth ( int... a, int b) // invalid- Ellipsis may be used towards the end only
public void meth ( int... a, double... b) // invalid - More than one variable length parameter list may not be used
public void meth ( Student... a) // valid - Reference types are also allowed
public void meth( int[]... a) // valid - reference types are also allowed 

访问link了解详情。