如何在将对象创建为不同类型的数组时摆脱类型不匹配错误?

时间:2009-06-01 19:16:24

标签: java typing

这是我的班级:

public class Test {     
    Test(){
        new Webshop
            (new Warenkorb[]{"Max", new Artikel[]{new Artikel("AAA",3.0)}, 
                                "Joe", new Artikel[]{new Artikel("BBB",3.0), 
                                new Artikel("CCC",3.0)}
                            },
                new Warenkorb[]{"Sam", new Artikel[]{new Artikel("BBB",3.0), 
                                                      new Artikel("CCC",3.0)}
                                },
            ); 
    }
}

这些是我的构造函数:

Artikel(String name, double preis){
    this.name = name;
    verkaufspreis = preis;
    Art = Warengruppe.S;

Warenkorb(String kunde, Artikel[] artikel){
    this.kunde = kunde;
    artikelliste = artikel;
    sessionid = s.nextInt();
    summe = 0;
    for(Artikel preis : artikel){
        summe += preis.verkaufspreis;
    }
}

我在

中遇到类型不匹配错误
  

测试类(String []无法解析为Warenkorb [] | Artikel []无法解析为Warenkorb)。

如何解决这些错误?

1 个答案:

答案 0 :(得分:5)

您缺少Warenkorb元素的构造函数调用。

尝试

...
new Warenkorb[]{new Warenkorb("Max", new Artikel[]{new Artikel("AAA",3.0))}, 
                new Warenkorb("Joe", new Artikel[]{new Artikel("BBB",3.0), 
                                                  new Artikel("CCC",3.0))}
...