返回多个java值
假设我有一个java函数,如下所示返回多个java值,java,Java,假设我有一个java函数,如下所示 public static int my(int a, int b) { int c = a + b; return c; String d = "Some Data"; return d; float f = a/b; return f } 那么,如何分别获得这3个返回值呢 所有值都是不同的数据类型 我看到了,但不能正确理解。返回int的数组。。e、 g.int[] public static int[
public static int my(int a, int b)
{
int c = a + b;
return c;
String d = "Some Data";
return d;
float f = a/b;
return f
}
那么,如何分别获得这3个返回值呢
所有值都是不同的数据类型
我看到了,但不能正确理解。返回int的数组。。e、 g.int[]
public static int[] my(int a, int b) {
int res[] = new int[4];
int c = a + b;
res[0] = c;
int d = a * b;
res[1] = d;
int e = a - b;
res[2] = e;
int f = a / b;
res[3] = f;
return res;
}
返回int.的数组。。e、 g.int[]
public static int[] my(int a, int b) {
int res[] = new int[4];
int c = a + b;
res[0] = c;
int d = a * b;
res[1] = d;
int e = a - b;
res[2] = e;
int f = a / b;
res[3] = f;
return res;
}
你可以试试这样的
public static int[] my(int a, int b) { // use an array to store values
int[] arr = new int[4];
int c = a + b;
arr[0] = c;
int d = a * b;
arr[1] = d;
int e = a - b;
arr[2] = e;
int f = a / b;
arr[3] = f;
return arr; // return values
}
你可以试试这样的
public static int[] my(int a, int b) { // use an array to store values
int[] arr = new int[4];
int c = a + b;
arr[0] = c;
int d = a * b;
arr[1] = d;
int e = a - b;
arr[2] = e;
int f = a / b;
arr[3] = f;
return arr; // return values
}
您只能返回一个元素,但该元素可以是数组或列表。您可以返回值列表。(一些练习)。我希望这能带来一些解决方案。您只能返回一个元素,但该元素可以是数组或列表。您可以返回值列表。(一些练习)。我希望这能带来一些解决办法。有两种方法
原因是Java是一种强类型编程语言。想要描述一个新的数据结构-编写一个新类。任何函数只能返回一个值。您可以做的是创建一个包含所有答案的对象并返回该对象
class ResultObject
{
public int c;
public int d;
public int e;
public int f;
}
在你的功能中,白色
public static ResultObject my(int a, int b)
{
ResultObject resObject = new ResultObject();
resObject.c = a + b;
resObject.d = a*b;
resObject.e = a-b;
resObject.f = a/b;
return resObject;
}
只能返回一个值。必须使该值“包含”其他值。任何函数只能返回一个值。您可以做的是创建一个包含所有答案的对象并返回该对象
class ResultObject
{
public int c;
public int d;
public int e;
public int f;
}
public class DataStorage{
private int a;
private String data;
private float f;
public DataStorage(int a, String data, float f){
this.a = a;
this.data = data;
this.f = f;
}
/* standard get/set method. */
}
在你的功能中,白色
public static ResultObject my(int a, int b)
{
ResultObject resObject = new ResultObject();
resObject.c = a + b;
resObject.d = a*b;
resObject.e = a-b;
resObject.f = a/b;
return resObject;
}
只能返回一个值。您必须使该值“包含”其他值
public class DataStorage{
private int a;
private String data;
private float f;
public DataStorage(int a, String data, float f){
this.a = a;
this.data = data;
this.f = f;
}
/* standard get/set method. */
}
创建一个可以容纳4个值的类
a、b、c、d
。在函数my
中,创建类的实例并设置a、b、c、d的值,然后返回对象这些链接问题的答案中哪些部分不清楚?只能返回一次,不能返回多个值。您链接的答案提供了解决方案。返回int[]数组或某些集合也可以。使用对象进行操作更可靠,也更好。您还可以创建列表或映射并返回值。创建一个可以容纳4个值的类a、b、c、d
。在函数my
中,创建类的实例并设置a、b、c、d的值,然后返回对象这些链接问题的答案中哪些部分不清楚?只能返回一次,不能返回多个值。您链接的答案提供了解决方案。返回int[]数组或某些集合也有效。使用对象进行操作更可靠,也更好。您还可以创建列表或映射并返回值。new int[4]
用于四个值。您将获得IndexAutofBound异常。新int[3]。更新了您的答案。new int[4]
用于四个值。您将获得indexOutOfBound异常。新int[3]。更新了你的答案。是的,这是正确的方法。在这篇文章中,使用getter方法会更受欢迎,比如说我只想访问f;系统输出打印LN(r.f);是的,这是正确的方法。在这篇文章中,使用getter方法会更受欢迎,比如说我只想访问f;系统输出打印LN(r.f);请检查我的编辑,如果退货类型是不同的数据类型怎么办?请检查我的编辑,如果退货类型是不同的数据类型怎么办?