如何返回多个值?

use*_*660 95 java

可能重复:
如何从Java方法返回多个对象?

是否可以在Java中将方法中的两个或多个值返回到main?如果是这样,怎么可能,如果不可能,我们怎么做?

Ara*_*ram 87

您可以在Java中返回Class的对象.

如果要返回多个相关的值,则将它们封装到类中然后返回该类的对象是有意义的.

如果要返回不相关的值,则可以使用Java的内置容器类,如Map,List,Set等.检查java.util包的JavaDoc以获取更多详细信息.

  • 您可以返回一个对象,但如果您的程序中有这么多的返回对象,则会使源代码变得复杂.对于从一个方法返回的东西,它的程序更好地拥有元组.喜欢c#.亲爱的c#它是一种很棒的语言 (2认同)
  • 返回映射、列表或集合(以避免返回 DTO)恕我直言是一种反模式。 (2认同)

Ran*_*Rag 37

你可以这样做:

public class Example
{
    public String name;
    public String location;

    public String[] getExample()
    {
        String ar[] = new String[2];
        ar[0]= name;
        ar[1] =  location;
        return ar; //returning two values at once
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 这的性能效率如何? (2认同)

Boh*_*ian 34

您只能返回一个值,但它可以是具有多个字段的对象 - 即"值对象".例如

public class MyResult {
    int returnCode;
    String errorMessage;
    // etc
}

public MyResult someMethod() {
    // impl here
}
Run Code Online (Sandbox Code Playgroud)