如何从java函数返回2个不同类型的值:仅适用于假人

如何从java函数返回2个不同类型的值:仅适用于假人,java,types,return-value,Java,Types,Return Value,我搜索了这个主题并找到了答案,但作为一个java虚拟人,我并不完全理解它,因此我尝试在一个小示例中执行我找到的最佳答案: package return2valuesofdifftype; public class Return2ValuesOfDiffType { public static void main(String[] args) { System.out.println("started"); String strHere = "nothing

我搜索了这个主题并找到了答案,但作为一个java虚拟人,我并不完全理解它,因此我尝试在一个小示例中执行我找到的最佳答案:

package return2valuesofdifftype;
public class Return2ValuesOfDiffType {
    public static void main(String[] args) {
        System.out.println("started");
        String strHere = "nothing happened";
        int iHere = -5;
        Method myM = new Method();
        ReturningValues myRV = new ReturningValues(strHere, iHere);
        myRV = myM.method(5, 10);   //should return a RV holding the string "correct" and the integer 1

    //so far so good (i hope), but how to get this string and integer out of RV ???

    System.out.println("string = "+strHere+" ,en i = "+iHere);
    }
}

package return2valuesofdifftype;
public final class ReturningValues {
    private final String value;
    private final int index;

    public ReturningValues(String value, int index) {
        this.value = value;
        this.index = index;
    }   
}

package return2valuesofdifftype;
public class Method {
    public ReturningValues method(int five, int ten) {
        String str="";
        int i=-1;
        if(five==5){str="correct";}
        else{str="wrong";}
        if(ten==10){i=1;}
        else{i=0;}
        ReturningValues rv = new ReturningValues(str, i);
        return rv;
    } 
} 
我的问题:如何从RV中获取这个整数和字符串? 谢谢!
dad为ReturningValues实现中的两个变量提供getter,如下所示:

public String getValue() {
    return value;
}
public int getIndex() {
    return index;
}

然后可以调用myRV.getValue();或myRV.getIndex()

添加getter方法是一种方法

public final class ReturningValues 
{
    private final String value;
    private final int index;

    public ReturningValues( String value, int index ) 
    {
        this.value = value;
        this.index = index;
    }   

    public String getString()
    {
        return value;
    }

    public String getInteger()
    {
        return index;
    }
}
另一种方法是将属性的可见性更改为public

public final class ReturningValues 
{
    public final String value;
    public final int index;

    public ReturningValues( String value, int index ) 
    {
        this.value = value;
        this.index = index;
    }   
}

将相关字段的可见性从
private
更改为
public
或创建getter。