如何在不使用对的情况下以一种方法返回两个对象?

时间:2018-08-11 21:11:29

标签: java

我想返回mn,但是return (m, n)不起作用。有什么办法可以return这两个值? 我不打算使用Pair,因为我还没有听说过它。

public static void getTwoIntegers(MyInteger m, MyInteger n)
{
     Random rand = new Random();

     m = new MyInteger(rand.nextInt(10));
     n = new MyInteger(rand.nextInt(10));

}

3 个答案:

答案 0 :(得分:1)

您可以返回array

public static MyInteger[] getTwoIntegers(){
   Random rand = new Random();
   MyInteger m = new MyInteger(rand.nextInt(10));
   MyInteger n = new MyInteger(rand.nextInt(10));
   return new MyInteger[] {m,n};
}

答案 1 :(得分:0)

自从我编写任何Java代码以来已经有一段时间了,但是你不能只使用数组吗?

或者使用new SomeClass(m, n)之类的包装对象(允许使用对象,对吗?)

upd

数组:

public static MyInteger[] getTwoIntegers(MyInteger m, MyInteger n)
{
     Random rand = new Random();

     m = new MyInteger(rand.nextInt(10));
     n = new MyInteger(rand.nextInt(10));
     MyInteger[] result = {m, n};
     return result;
}

upd2

对象:

public static MyIntegerPair getTwoIntegers(MyInteger m, MyInteger n)
{
     Random rand = new Random();

     m = new MyInteger(rand.nextInt(10));
     n = new MyInteger(rand.nextInt(10));
     return new MyIntegerPair(m, n);
}

public class MyIntegerPair {
    public MyInteger first;
    public MyInteger second;
    public MyIntegerPair(f, s) {
        this.first = f;
        this.second = s;
    }
}

答案 2 :(得分:0)

除返回值外的另一个概念。

Input.Normalize();
myvector3 = Input;

现在获得3或4个整数就很简单。