如何从Java方法返回2个值?
我试图从Java方法返回2个值,但出现这些错误。这是我的代码:
// Method codepublic static int something(){
int number1 = 1;
int number2 = 2;
return number1, number2;
}
// Main method code
public static void main(String[] args) {
something();
System.out.println(number1 + number2);
}
错误:
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - missing return statement at assignment.Main.something(Main.java:86)
at assignment.Main.main(Main.java:53)
Java结果:1
回答:
不要返回包含两个值的数组或使用泛型Pair类,而应考虑创建一个代表要返回的结果的类,然后返回该类的实例。给班级起一个有意义的名字。与使用数组相比,此方法的好处是类型安全,这将使你的程序更易于理解。
注意:通用Pair
类,如此处其他一些答案中所建议,也可以为你提供类型安全性,但不会传达结果表示的内容。
示例(不使用真正有意义的名称):
final class MyResult { private final int first;
private final int second;
public MyResult(int first, int second) {
this.first = first;
this.second = second;
}
public int getFirst() {
return first;
}
public int getSecond() {
return second;
}
}
// ...
public static MyResult something() {
int number1 = 1;
int number2 = 2;
return new MyResult(number1, number2);
}
public static void main(String[] args) {
MyResult result = something();
System.out.println(result.getFirst() + result.getSecond());
}
以上是 如何从Java方法返回2个值? 的全部内容, 来源链接: utcz.com/qa/418731.html