是否可以在java函数中返回多个值?

时间:2014-02-09 11:16:12

标签: java

是否可以在java函数中返回多个值?喜欢,

public void retTest() {
    return (30,40,50);
}

//From Caller fun 
int a,b,c;
(a,b,c) = retTest();

4 个答案:

答案 0 :(得分:3)

不可能。 但是你可以使用return一个封装你所有数据的对象。这样编码,调试和数据提取变得更容易,代码增强性也大大提高了。

如: -

class Resut{

int a,b,c;
}

retTest()
{
return new Result();
}

答案 1 :(得分:1)

您可以通过返回某种类型的List(如ArrayList)或其他一些集合,或您自己的包含字段或数组的自定义对象来执行此操作。

对于像这样的元组结果,数组将是一个明智的选择。

答案 2 :(得分:1)

不,你不能在Java中返回很多参数,即使不支持out关键字,你应该创建一个可能包含你的值并返回它的新类型。

Class ReturnObject
{
    //Fields you want to return here
    public ReturnObjectConstructor(InterParamtersHere)
    {
       // Initialize your fields here
    }

}

Public ReturnObject YourMethod()
{
    ReturnObject returnObject = new ReturnObject(parameterHere)
    return returnObject;
}

答案 3 :(得分:0)

您的方法定义如下

public List<Integer> retTest() 

您可以返回ArrayList整数值,如下所示

        List<Integer> values = new ArrayList<Integer>() {
            {
                add(536);
                add(85);
                add(50);
                add(45);
            }
        };
return values;