提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
刚入门的javaer,实现一个简单的图书管理系统,不涉及io,用到了面向对象,map,set容器,推荐作为新手入门,检验学习效果。
一、map
,hashmap
,set
是什么?
一图胜千言
二、项目代码
1.测试代码
代码如下:
import java.util.*;
public class Test {
public static void main(String[] args) {
Map<Integer, Book> map = new HashMap<>();
while (true) {
System.out.println("1.show");
System.out.println("2.add");
System.out.println("3.delete");
System.out.println("4.exit");
Scanner sc = new Scanner(System.in);
System.out.println("please entry");
int choice = sc.nextInt();
switch (choice) {
case 1:
System.out.println("1.show");
Set<Integer> keySet = map.keySet();
for (Integer key : keySet) {
Book book = map.get(key);
System.out.println("number = " + book.getNumber() +
" | name = " + book.getName() +
" | author = " + book.getAuthor() +
" | price = " + book.getPrice());
}
break;
case 2:
System.out.println("2.add");
System.out.println("name author number price");
String name = sc.next();
String author = sc.next();
int number = sc.nextInt();
int price = sc.nextInt();
map.put(number, new Book(name, author, number, price));
break;
case 3:
System.out.println("3.delete");
System.out.println("enter the desire number to delete!");
int delNum = sc.nextInt();
Book book = new Book();
if ((book = map.remove(delNum)) == null) {
System.out.println("didn't exist this book");
} else {
System.out.println("number = " + book.getNumber() +
" | name = " + book.getName() +
" | author = " + book.getAuthor() +
" | price = " + book.getPrice());
}
break;
case 4:
System.out.println("4.exit");
System.exit(-1);
break;
default:
System.out.println("Wrong Operation");
break;
}
}
}
}
2.Book类实现
代码如下:
public class Book {
private String name;
private String author;
private int number;
private int price;
public Book() {
}
public Book(String name, String author, int number, int price) {
this.name = name;
this.author = author;
this.number = number;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}
总结
用hashmap
结构存储book,并将book的属性number作为map的键,number还可作为索引对map中的数据进行增删改查。