如何使用方法将两个对象连接到 return 一个新对象
How do I connect two objects with a method to return a new object
我有 2 个 class 对象 A 和 B。它们都包含一个名为 'prob' 的属性(表示概率)。
现在我想写一个方法,它连接两个对象并创建一个新的对象,具有定义的属性 'prob' 和“
A.prob(i)*B.prob(j)=C.prob(i+j).
这是我的代码:
PMF add(PMF pmf){
for(int i=0; i<x; i++){
for(int j=0; j<x; j++){
C.prob[i+j]=prob[i]*pmf.prob(j);
}
}
}
这是我的 PMF class。我已经在我的另一个 class (带有 main 方法的那个,它被称为 "Hund" )中定义了一些对象:
public class Hund {
public static void main(String[] args){
PMF A= new PMF(6);
PMF B= new PMF(6);
PMF C= new PMF(6);
A.setProb(1, 1);
A.setProb(2, 1);
A.setProb(3, 1);
A.setProb(4, 1);
A.setProb(5, 1);
A.setProb(6, 1);
System.out.println(A.prob(6));
}
}
但是现在,它向我显示错误 "C cannot be resolved to a variable"。如何使它 return 成为 PMF 类型的变量?我试过的变化是例如:
PMF add(PMF pmf){
PMF C= new PMF(x*2);
for(int i=0; i<x; i++){
for(int j=0; j<x; j++){
C.prob[i+j]=prob[i]*pmf.prob(j);
return C;
}
}
}
}
但随后它向我显示错误 This method must return a result of type of PMF.
我做错了什么?给出了方法名称(类型),所以我无法将其更改为 void add(PMF pmf) 或 smth.
PMF add(PMF pmf){
PMF C= new PMF(x*2);
for(int i=0; i<x; i++){
for(int j=0; j<x; j++){
C.prob[i+j]=prob[i]*pmf.prob(j);
return C;
}
}
return C;
}
我有 2 个 class 对象 A 和 B。它们都包含一个名为 'prob' 的属性(表示概率)。 现在我想写一个方法,它连接两个对象并创建一个新的对象,具有定义的属性 'prob' 和“
A.prob(i)*B.prob(j)=C.prob(i+j).
这是我的代码:
PMF add(PMF pmf){
for(int i=0; i<x; i++){
for(int j=0; j<x; j++){
C.prob[i+j]=prob[i]*pmf.prob(j);
}
}
}
这是我的 PMF class。我已经在我的另一个 class (带有 main 方法的那个,它被称为 "Hund" )中定义了一些对象:
public class Hund {
public static void main(String[] args){
PMF A= new PMF(6);
PMF B= new PMF(6);
PMF C= new PMF(6);
A.setProb(1, 1);
A.setProb(2, 1);
A.setProb(3, 1);
A.setProb(4, 1);
A.setProb(5, 1);
A.setProb(6, 1);
System.out.println(A.prob(6));
}
}
但是现在,它向我显示错误 "C cannot be resolved to a variable"。如何使它 return 成为 PMF 类型的变量?我试过的变化是例如:
PMF add(PMF pmf){
PMF C= new PMF(x*2);
for(int i=0; i<x; i++){
for(int j=0; j<x; j++){
C.prob[i+j]=prob[i]*pmf.prob(j);
return C;
}
}
}
}
但随后它向我显示错误 This method must return a result of type of PMF.
我做错了什么?给出了方法名称(类型),所以我无法将其更改为 void add(PMF pmf) 或 smth.
PMF add(PMF pmf){
PMF C= new PMF(x*2);
for(int i=0; i<x; i++){
for(int j=0; j<x; j++){
C.prob[i+j]=prob[i]*pmf.prob(j);
return C;
}
}
return C;
}