简体   繁体   English

传递ArrayList并返回输出值

[英]passing ArrayList and returning value for output

I have been trying to pass the arraylist into my rental menu class and extracting the relevant the movie title, id etc But i kept getting the error of incompatible type. 我一直试图将arraylist传递到我的出租菜单类中,并提取相关的电影标题,id等,但是我一直收到类型不兼容的错误。 Can someone please enlighten me as to my concept I've got wrong? 有人可以启发我我错了吗?

import java.util.ArrayList;
public class DVDManager {
    private ArrayList<DVD> group;
    private int Id;
    private String title;
    private char genre;

public DVDManager (){
    this.group = new ArrayList<DVD>();
}

public DVDManager (int Id, String title, char genre){
    this.Id = Id;
    this.title = title;
    this.genre = genre;
    this.group = new ArrayList<DVD>();
}
public int getId (){
    return Id;
}

public String getTitle(){
    return title;
}

public char getGenre(){
    return genre;
}

public void addDVD (int Id, String title, char genre){
    Id = group.size()+1;
    group.add(new DVD(Id, title, genre));
}

public ArrayList<DVD> retrievalAll(){  
    return group;
}
}

import java.util.*;
public class RentalMenu{
    private DVDManager dvdManager;

public RentalMenu(){
    dvdManager = new DVDManager();
}

public void processListAllDVDs(){

    DVDManager m1 = new DVDManager();

    //**ERROR IS THE LINE BELOW!!!!!!!!!!!!!**

    ArrayList<DVD> myList = m1.retrievalAll();
    //listDVDs = dvdManager.retrievalAll();
    for (int i=0; i<myList.size(); i++){

        DVDManager listDVDs = myList.get(i);
        System.out.println(listDVDs.getTitle + listDVDs.getGenre);
    }
}

public void readOption(){
    System.out.println("*=======================*");
    System.out.println("* Choose the following*  ");
    System.out.println("1) Add a new DVD         ");
    System.out.println("2) search a DVD         ");
    System.out.println("3) Rent a DVD         ");
    System.out.println("4) Show all DVD       ");
    System.out.println("5) EXIT       ");
    Scanner sc = new Scanner(System.in);

    int option = sc.nextInt();
    int movId = 1;

        if (option == 1){ 
            System.out.println("Enter movie title");
            sc.nextLine();
            String newMovie = sc.nextLine();
            System.out.println("Enter genre");
            char g = sc.nextLine().charAt(0);
            dvdManager.addDVD(movId, newMovie, g);
            processListAllDVDs();
        }

}
}
   for (int i=0; i<myList.size(); i++){
        DVDManager listDVDs = myList.get(i);      //here is the problem
        System.out.println(listDVDs.getTitle + listDVDs.getGenre);
   }

You need to change to 您需要更改为

  DVD dvd= myList.get(i);

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

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