Java 如何从ArrayList中删除对象
所以我有一个家庭作业,创建一个java电影程序。它应该具有添加电影(标题、演员和出场日期)、显示(添加的所有电影)和删除电影(按电影标题)选项。 到目前为止,我还能够创建addMovie()和showMovie()方法……但我真的被ad removeMovies()卡住了 下面是Main.java的代码:Java 如何从ArrayList中删除对象,java,arraylist,Java,Arraylist,所以我有一个家庭作业,创建一个java电影程序。它应该具有添加电影(标题、演员和出场日期)、显示(添加的所有电影)和删除电影(按电影标题)选项。 到目前为止,我还能够创建addMovie()和showMovie()方法……但我真的被ad removeMovies()卡住了 下面是Main.java的代码: 正如您可能看到的,我是一个非常初级的java程序员。 请,如果有人可以帮助使用removeMovie()方法,我将非常感激 既然您有应该删除的电影索引(choice-1),您可以使用 您可以
正如您可能看到的,我是一个非常初级的java程序员。
请,如果有人可以帮助使用removeMovie()方法,我将非常感激 既然您有应该删除的电影索引(
choice-1
),您可以使用
您可以使用remove(int-index)方法:
publicstaticvoidremoveMovies(){
智力选择;
System.out.println(“\n--按标题删除电影--\n”);
对于(int i=0;i
}如果您发现他的答案很有用,请单击勾选mar按钮,以显示他回答的正确。
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
static Scanner input = new Scanner(System.in);
static ArrayList<Movies> movHolder = new ArrayList<Movies>();
public static void main(String[] args) {
int op = -1;
while (op != 0){
op= menuOption();
switch(op){
case 1:
addMovies();
break;
case 2:
removeMovies();
break;
case 3:
showMovies();
break;
case 0:
System.out.print("\n\nYou have exited the program!");
break;
default:
System.out.println("\nWrong input!");
}
}
}
public static int menuOption(){
int option;
System.out.println("\nMenu\n");
System.out.println("1. Add new movies");
System.out.println("2. Remove movies");
System.out.println("3. Show all movies");
System.out.println("0. Exit program");
System.out.print("\nChoose an option: ");
option = input.nextInt();
return option;
}
public static void addMovies(){
String t, a, d;
input.nextLine();
System.out.println("\n---Adding movies---\n");
System.out.print("Enter title of movie: ");
t = input.nextLine();
System.out.print("Enter actor's name: ");
a = input.nextLine();
System.out.print("Enter date of apearance: ");
d = input.nextLine();
Movies mov = new Movies(t, a, d);
movHolder.add(mov);
}
public static void removeMovies(){
int choice;
System.out.println("\n---Removing movies by title---\n");
for(int i = 0; i < movHolder.size(); i++){
System.out.println((i+1)+ ".) "+ movHolder.get(i).toString());
}
System.out.print("Enter movie do you want to remove?");
choice = input.nextInt();
}
public static void showMovies(){
System.out.print("---Showing movie list---\n");
for(int i = 0; i < movHolder.size(); i++){
System.out.println((i+1)+ ".) "+ movHolder.get(i).toString());
}
}
}
public class Movies {
private String title;
private String actor;
private String date;
public Movies (String t, String a, String d){
title = t;
actor = a;
date = d;
}
public Movies(){
title = "";
actor = "";
date = "";
}
public String getTitle(){
return title;
}
public String getActor(){
return actor;
}
public String getDate(){
return date;
}
public String toString(){
return "\nTitle: " + title +
"\nActor: " + actor +
"\nRelease date: " + date;
}
}
System.out.print("Enter movie do you want to remove?");
choice = input.nextInt();
movHolder.remove(choice-1);
public static void removeMovies(){
int choice;
System.out.println("\n---Removing movies by title---\n");
for(int i = 0; i < movHolder.size(); i++){
System.out.println((i+1)+ ".) "+ movHolder.get(i).toString());
}
System.out.print("Enter movie do you want to remove?");
choice = input.nextInt();
// Decrement the index because you're asking the user for a 1 based input.
movHolder.remove(choice - 1)
}