Java - как передать ArrayList в конструктор - PullRequest
0 голосов
/ 16 декабря 2018

Я работаю в классе проекта, и этот вопрос упоминается в заголовке.

Например: в моем случае у меня есть Класс предметов с дочерним классом с именем CDRom (наследование), затем CDRom должен иметь одного или нескольких авторов, поэтому я подумал, что каждый объект из CDRom должен иметь свой собственный ArrayList внутри объекта.Но это возможно?И как?

На данный момент у меня есть это:

public CDRom(int codi, double preu, String titul, Date dataPublicacion, List<String> autors, int stock) {
    super(codi, preu, titul, dataPublicacion, autors);
    this.stock = stock;
}

public static boolean createCdrom() {
    boolean valid = true;

    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
    LocalDate localDate = LocalDate.now();
    System.out.println(dtf.format(localDate)); 

    String[] arr = {"autor1","autor2","autor3"};

    //CDRom cdrom = new CDRom(count++, 34.99, "The Beattles", dtf.format(localDate), Arrays.asList("asd1","asd2"),50);
    CDRom cdrom = new CDRom(count++, 34.99, "The Beattles", dtf.format(localDate), Arrays.asList("asdd","asd"), 50);
    return valid;
}

enter image description here

1 Ответ

0 голосов
/ 16 декабря 2018

См. Порядок аргументов конструктора

public CDRom(int codi, double preu, String titul, Date datePublicacion, ArrayList<String> autors, int stock){

Но вы передаете аргументы в неправильном порядке, а также пытаетесь передать что-то недопустимое вместо ArrayList

CDRom cdrom = new CDRom(count++, 34.99, "The Beattles", dtf.format(localDate), 50, autors[]{"asdd", "asd"});

Следуйте порядку

CDRom cdrom = new CDRom(count++, 34.99, "The Beattles", dtf.format(localDate), Arrays.asList("asdd","asd"), 50);

Примечание Всегда обновляйте код в сообщении, а не изображение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...