定义一个Book类使用ArrayList集合,在类main方法加载运行时添加10本书,书籍具有id,书名、作者、价格三个属性,在main函数中通过键盘录入一个书名时,查询出该书籍的详细信息

package cn.io;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Book {
    private int id;
    private String name;
    private String author;
    private double price;

    public Book() {
    }

    static List<Book> list = new ArrayList<>();


    public Book(int id, String name, String author, double price) {
        this.id = id;
        this.name = name;
        this.author = author;
        this.price = price;
	getter setter….
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    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 double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public static void main(String[] args) {
        //图书初始10本
        Scanner sc = new Scanner(System.in);
        int i = 0;
        while(true){
            i = list.size()+1;
            System.out.printf("请输入第%d本书籍名称  作者   价格:",i);
            String n = sc.next();
            String a = sc.next();
            double p = sc.nextDouble();
            Book bk = new Book(i,n,a,p);
            list.add(bk);
            if(list.size() == 10){
                System.out.println("10书籍输入完成。进入程序查询");
                break;
            }
            System.out.println();
        }

        System.out.println("----------------------------------------");

        while(true){
            System.out.print("请输入书籍名称(退出quit):");
            String n = sc.nextLine();
            if("quit".equalsIgnoreCase(n)) break;
            for(Book b : list){
                if(b.getName().contains(n)){
                    System.out.println(b);
                }
            }
            System.out.println();
        }

    }


    @Override
    public String toString() {
        return "Book{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", author='" + author + '\'' +
                ", price=" + price +
                '}';
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值