首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在构造函数中填充数组

如何在构造函数中填充数组
EN

Stack Overflow用户
提问于 2020-04-19 18:44:22
回答 3查看 217关注 0票数 0

我有一辆客货车和一辆班车,它们有关系。我已经创建了一个货车数组,需要在列车构造函数中使用(据我所理解),但我不理解h如何在构造函数中使用数组并填充数组以使代码运行

这是我的密码。谢谢你的解释!

代码语言:javascript
复制
public class Wagon {
    private int m;

    public int getM() {
        return m;
    }


    public Wagon(int m) {
        this.m = m;
    }


    private Wagon[] wag = new Wagon[3];
代码语言:javascript
复制
public class Train {

    private Wagon[] wag;

    public Train(Wagon[] wag){
        this.wag=wag;
    }


    public int findCargo() {

        int x = 0;

        for (Wagon w : wag) {

            x += w.getM();
        }

        return x;
    }


    public int findAverage() {

        return this.findCargo() / wag.length;
    }
}

    public static void main(String[] args) {
        Train train = new Train( new Wagon[]{8,9,7});
        System.out.println(train.findCargo());
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-04-19 19:02:31

你不懂数组的语法。

参考文献::https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html

代码语言:javascript
复制
// declares an array of integers
int[] anArray = { 100, 200, 300 };
// declares an array of String's
String[] strArray= { "100", "200", "300" };

如果您想创建Wagon数组,那么

代码语言:javascript
复制
Wagon[] wagons = new Wagon[]{new Wagon(8), new Wagon(9), new Wagon(7)};

将代码替换为

代码语言:javascript
复制
Wagon[] wagons = new Wagon[]{new Wagon(8), new Wagon(9), new Wagon(7)};
Train train = new Train(wegons);
System.out.println(train.findCargo());
票数 1
EN

Stack Overflow用户

发布于 2020-04-19 18:50:24

可以使用变量参数语法。

代码语言:javascript
复制
public Train(Wagon... wag){
        this.wag=wag;
    }

然后你就可以这样称呼它

代码语言:javascript
复制
Train train = new Train(new Wagon(1), new Wagon(2), new Wagon(3));
票数 3
EN

Stack Overflow用户

发布于 2020-04-19 18:48:53

这个new Wagon[]{8,9,7}不起作用,您尝试创建一个货车数组并将其填充到ints中。你需要用货车对象填充它

有效的是new Wagon[]{new Wagon(8), new Wagon(9), new Wagon(7)}

代码语言:javascript
复制
Wagon[] wagons = new Wagon[]{new Wagon(8), new Wagon(9), new Wagon(7)};
Train train = new Train(wagons);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61309737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档