static ArrayList<Student> students = new ArrayList<>(); //定义学生集合 static Scanner sc = new Scanner(System.in); public static void main(String[] args) { showbase();//录入一些信息 while (true) { showborad();//界面板 int a = sc.nextInt();//定义一个数字 if (a == 0){ break; }//如果0,就跳出 switch (a) { case 1 -> show(); case 2 -> add(); case 3 -> delete(); case 4 -> modify(); case 5 -> search(); case 6 -> sort(); case 7 -> count(); default -> System.out.println("请输入正确序号!"); }//选择自己想要的功能 } }
时间: 2024-02-15 22:28:51 浏览: 92
这段代码是一个主函数,其中定义了一个 ArrayList 类型的 students 集合和一个 Scanner 类型的 sc 对象。在程序开始时,会先调用 showbase() 方法录入一些学生信息。然后,程序会进入一个 while 循环,不断显示一个“界面板”,要求用户输入一个数字来选择相应的功能。如果用户输入的是 0,程序会跳出 while 循环,结束程序。如果用户输入的是 1~7 中的某个数字,程序会根据用户的选择调用相应的方法来进行显示、添加、删除、修改、查找、排序、统计等操作。如果用户输入的是非法数字,程序会输出“请输入正确序号!”的提示。
相关问题
public class VideoStore { private ArrayList<String> movies = new ArrayList<String>(); private ArrayList<Integer> stock = new ArrayList<Integer>();使用java语言,使用到集合和Scanner类
这是一个视频租赁店的类,其中包含两个ArrayList,一个用于存储电影名称,另一个用于存储库存数量。您可以使用Scanner类来获取用户输入,以便进行租赁和归还操作。以下是一些可能的方法:
// 添加电影到库存中
public void addMovie(String movie, int stock) {
movies.add(movie);
stock.add(stock);
}
// 租赁电影
public void rentMovie(String movie) {
int index = movies.indexOf(movie);
if (index >= 0 && stock.get(index) > 0) {
stock.set(index, stock.get(index) - 1);
System.out.println("您已成功租赁电影:" + movie);
} else {
System.out.println("很抱歉,该电影暂时无法租赁。");
}
}
// 归还电影
public void returnMovie(String movie) {
int index = movies.indexOf(movie);
if (index >= 0) {
stock.set(index, stock.get(index) + 1);
System.out.println("您已成功归还电影:" + movie);
} else {
System.out.println("很抱歉,该电影不属于本店。");
}
}
请注意,这只是一个简单的示例,您可以根据需要进行修改和扩展。
Task 2. Create a list of students by reading from student_hobbies.txt and display the list. // - You will also need to create a Student class, which has at least // two data fields: student name and an ArrayList of hobbies (String-type).优化以下代码private static ArrayList<Student> readFile(String string) throws IOException{ ArrayList<Student> studentlist=new ArrayList<Student>(); File file = new File("student_hobbies_JU.txt"); Scanner scanner = new Scanner(file); while (scanner.hasNextLine()) { String line = scanner.nextLine(); String[] data = line.split(", "); System.out.println(data); String name = data[0]; ArrayList<String> hobbies = new ArrayList<String>(); for(int i=0;i<data.length;i++){ hobbies.add(data[i]); } Student student = new Student(name, hobbies); studentlist.add(student); System.out.println(student); } scanner.close(); return studentlist; }//end readFile
下面是优化后的代码,其中将文件名作为参数传入函数中,使函数更加通用:
```
private static ArrayList<Student> readFile(String fileName) throws IOException {
ArrayList<Student> studentList = new ArrayList<Student>();
File file = new File(fileName);
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
String[] data = line.split(", ");
String name = data[0];
ArrayList<String> hobbies = new ArrayList<String>();
for (int i = 1; i < data.length; i++) { // 从第二个元素开始,将所有的兴趣爱好添加到hobbies列表中
hobbies.add(data[i]);
}
Student student = new Student(name, hobbies);
studentList.add(student);
}
scanner.close();
return studentList;
}
```
该函数将指定文件中的内容读取到一个ArrayList<Student>中,并返回该列表。下面是Student类的代码:
```
public class Student {
private String name;
private ArrayList<String> hobbies;
public Student(String name, ArrayList<String> hobbies) {
this.name = name;
this.hobbies = hobbies;
}
public String getName() {
return name;
}
public ArrayList<String> getHobbies() {
return hobbies;
}
public void setName(String name) {
this.name = name;
}
public void setHobbies(ArrayList<String> hobbies) {
this.hobbies = hobbies;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", hobbies=" + hobbies +
'}';
}
}
```
该类包含两个数据字段:name和hobbies,分别表示学生的姓名和兴趣爱好列表。该类还包含构造函数、getter和setter方法以及toString方法,用于打印学生对象的信息。可以使用以下代码调用readFile函数并打印学生列表:
```
try {
ArrayList<Student> studentList = readFile("student_hobbies.txt");
for (Student student : studentList) {
System.out.println(student);
}
} catch (IOException e) {
e.printStackTrace();
}
```
阅读全文