繁体   English   中英

如何使用方法连接两个对象以返回新对象

[英]How do I connect two objects with a method to return a new object

我有两个类对象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课程。 我在我的另一个类(使用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无法解析为变量”。 如何让它返回PMF-Type变量? 我试过的变化是:

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;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM