首先需要一个实体类Book
package com.deyuan.day17.code1; public class Book { private String name; private int price; private String author; private String type; public Book() { } public Book(String name, int price, String author, String type) { this.name = name; this.price = price; this.author = author; this.type = type; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getType() { return type; } public void setType(String type) { this.type = type; } }
然后在创建我们的测试类
package com.deyuan.day17.code1; import com.deyuan.day17.code.Body; import java.util.ArrayList; import java.util.Scanner; public class BookDemo { public static void main(String[] args) { ArrayListbooks=new ArrayList<>(); while(true) { System.out.println("欢迎来到图书管理系统!"); System.out.println("1 添加图书"); System.out.println("2 查看所有图书"); System.out.println("3 按图书名修改图书"); System.out.println("4 按图书名删除图书"); System.out.println("请输入你的选择:"); Scanner scanner=new Scanner(System.in); int i = scanner.nextInt(); switch (i) { case 1: // System.out.println("添加图书"); addBook(books); break; case 2: // System.out.println("查看所有图书"); lookBook(books); break; case 3: // System.out.println("按图书名修改图书"); updateBook(books); break; case 4: // System.out.println("按图书名删除图书"); deleteBook(books); break; default: System.out.println("谢谢使用"); System.exit(0); break; } } } public static void addBook(ArrayList books){ //键盘录入图书需要的数据 .显示提示信息.提示要输入何种信息 Scanner sc7=new Scanner(System.in); System.out.println("请输入你要添加的图书名字"); String name = sc7.next(); System.out.println("请输入你要添加图书的价格"); int price = sc7.nextInt(); System.out.println("请输入你要添加的图书作者"); String author = sc7.next(); System.out.println("请输入你要添加的图书类型"); String type = sc7.next(); //创建图书对象 把键盘录入的数据全部赋值给图书对象的成员变量 Book b =new Book(); b.setName(name); b.setPrice(price); b.setAuthor(author); b.setType(type); //把对象的值赋值给我们数组 books.add(b); System.out.println("添加图书成功"); } public static void lookBook(ArrayList books){ // 将集合中数据取出按照对应格式显示学生信息,价格补充元 System.out.println("书名tt价格tt作者tt类型"); for (int i = 0; i < books.size(); i++) { Book bbbb = books.get(i); System.out.println(bbbb.getName()+"t"+bbbb.getPrice()+"元tt"+bbbb.getAuthor()+"tt"+bbbb.getType()); } } public static void deleteBook(ArrayList books){ //键盘录入要删除的图书编号 ,显示提示信息 Scanner sc6=new Scanner(System.in); System.out.println("请输入你要删除的图书名"); String name = sc6.next(); if(books.size()==0){ System.out.println("没有任何数据,请核对信息"); return; } //键盘录入的书名和对象匹配 for (int i = 0; i < books.size(); i++) { Book bb = books.get(i); if(bb.getName().equals(name)){ books.remove(i); break; } } System.out.println("删除成功"); } public static void updateBook(ArrayList books){ // 键盘录入要修改的图书名字 Scanner sc5=new Scanner(System.in); System.out.println("请输入你要修改的图书名字"); String name = sc5.next(); //键盘录入要修改的图书信息 System.out.println("请输入修改后的图书新名字"); String name1 = sc5.next(); System.out.println("请输入修改后的图书新价格"); int price = sc5.nextInt(); System.out.println("请输入修改后的图书新作者"); String author = sc5.next(); System.out.println("请输入修改后的图书新类型"); String type = sc5.next(); //创建一个新的图书对象 Book oo=new Book(); oo.setName(name1); oo.setPrice(price); oo.setAuthor(author); oo.setType(type); //遍历集合对应的图书信息 for (int i = 0; i < books.size(); i++) { Book p = books.get(i); if(p.getName().equals(name)){ //对象名.set方法 就是更改元素 第一个值写索引号第二个值写对象名 books.set(i,oo); } } //给出修改成功提示 System.out.println("修改成功"); } }
我是用来键盘录入的方法写的后续还有升级
代码就这么多
代码放在一个包里就行
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)