ホームページ  >  記事  >  Java  >  Java実践シェアリング~図書貸出システムの運用効果と課題~

Java実践シェアリング~図書貸出システムの運用効果と課題~

php是最好的语言
php是最好的语言オリジナル
2018-08-04 11:30:171825ブラウズ

私は Java の基礎を独学で学習しており、JavaWeb の方向に開発したいと考えています。私は長い間独学で学習してきましたが、基本的に毎回記録する方法がわかりません。昨日の GitChat プッシュを見て、監視のために毎日の学習を記録する必要があると感じました。

今日は Java の小さな演習、書籍貸出システムです。実装する必要がある機能は次のとおりです:

  • ユーザーが本を借りる必要があるかどうかを決定する

  • ユーザーが本を借りることを選択したとき。 、本のリストを表示します

  • 本のリストには本のシリアル番号、本のタイトル、貸出価格、著者が含まれています

  • ユーザーは借りる本の数を選択し、対応する本と貸出日数を選択します

  • ユーザーが支払う必要がある金額を計算します

Book.java

package com.imooc;/**
 * 图书类 包含图书序号 名称 价格
 * */public class Book {
    private int id;    private String name;    private double price;    private String author;    public Book(int id, String name, double price, String author) {        // TODO Auto-generated constructor stub
        this.id = id;        this.setName(name);        this.price = price;        this.author = author;
    }    public void setId(int id) {        this.id = id;
    }    public int getId() {        return id;
    }    public void setPrice(double price) {        this.price = price;
    }    public double getPrice() {        return price;
    }    public void setAuthor(String author) {        this.author = author;
    }    public String getAuthor() {        return author;
    }    public void setName(String name) {        this.name = name;
    }    public String getName() {        return name;
    }

}

BorrowBooks.java

package com.imooc;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;public class BorrowBooks {    /**
     * @param args
     */
    public static void main(String[] args) {        // TODO Auto-generated method stub
        System.out.println("~~~~~~~欢迎使用图书借阅系统~~~~~~~~ ");
        System.out.println("您是否要借书:1.是 >> 点击其他键退出");
        BorrowBooks test = new BorrowBooks();        while (test.test1()) {
            System.out.println(">>>您可选择图书及其价目表:");
            System.out.println("-------------------------------------------");
            Book[] books = { new Book(0, "红楼梦", 12, "曹雪芹"),                    new Book(1, "西游记", 12, "吴承恩"),                    new Book(2, "汉乡", 12, "孑与2"),                    new Book(3, "大魏宫廷", 12, "贱宗首席"),                    new Book(4, "三国演义", 12, "罗贯中"),                    new Book(5, "水浒传", 12, "施耐庵") };
            System.out.println("序号" + "  " + "\t" + "书名" + "     " + "\t"
                    + "租金" + "      " + "\t" + "作者");            for (Book book : books) {                if (book.getClass().equals(Book.class)) {
                    System.out.println(book.getId() + "\t" + "\t"
                            + book.getName() + "\t" + "\t" + book.getPrice()
                            + "/天" + "\t" + "\t" + book.getAuthor() + "/著");
                }
            }
            System.out.println("-------------------------------------------");
            System.out.println("-->请输入你要借书的数量:");
            Scanner zScanner = new Scanner(System.in);            int BookNum = zScanner.nextInt();            if (BookNum > 0) {
                List<Book> bookList = new ArrayList<Book>();                int add = 0;                int bookPrice = 0;                for (int i = 0; i < BookNum; i++) {
                    System.out.println(">>请输入第" + (i + 1) + "本书的序号:");                    int num = zScanner.nextInt();                    try {
                        bookList.add(books[num]);
                        System.out.println("----成功添加:"
                                + bookList.get(add).getName());                        if (books[num].getClass().equals(Book.class)) {
                            bookPrice += ((Book) bookList.get(add)).getPrice();
                        }
                        add++;
                    } catch (Exception e) {                        // TODO: handle exception
                        System.out.println("您输入的图书序号不正确");
                        i = i - 1;
                        BookNum = BookNum;
                    }

                }
                System.out.println("->请输入借阅的天数:");
                Scanner g = new Scanner(System.in);                int bookDay = g.nextInt();
                bookPrice = bookPrice * bookDay;
                System.out.println("------------借阅选书完成------------" + "\n"
                        + "下面开始统计数据..........");
                System.out.print("您借阅的图书" + BookNum + "本:" + " ");                for (Book book : bookList) {
                    System.out.println(book.getName() + " " + "\n");
                }
                System.out.println();
                System.out.println("共租用:" + bookDay + " 天");
                System.out.println("需要付款:" + bookPrice + " 元");
                System.out.println("->请输入付款金额:");
                System.out.println("------------");
                Scanner x = new Scanner(System.in);                 int priceSpread = bookPrice - x.nextInt();//定义差价
                 while (bookPrice != x.nextInt())

                 System.out.println("------------" + "\n" + "输入错误,请重新输入金额!");                /*
                 while (bookPrice != x.nextInt())
                 {
                 if (bookPrice > x.nextInt()) {
             int priceSpread = bookPrice - x.nextInt();//定义差价
                 System.out.println("------------" + "\n" + "您已付款"
             + x.nextInt() + "元,还需支付" + priceSpread + "元");
                 }

             if (bookPrice <x.nextInt()) {
                 int priceSpread = x.nextInt()-bookPrice ;//定义差价
             System.out.println("------------" + "\n" + "您已付款"
             + x.nextInt() + "元,找您" + priceSpread + "元");
             }
*/
                System.out.println("------------");
                System.out.println("              交易成功!");
                System.out.println();
                System.out.println("------------感谢您的使用--------------");
                System.out.println("………………继续借书请按1,退出请按其他键………………");
            } else {
                System.out.println("您输入的借书数量为“0”,自动为您退出系统");
                System.exit(0);
            }

        }

    }    private static Object bookPrice(int nextInt) {        // TODO Auto-generated method stub
        return null;
    }    // 捕获输入参数不正确异常
    public boolean test1() {        try {
            Scanner z = new Scanner(System.in);            if (z.nextInt() == 1) {                return true;
            } else {                return false;
            }
        } catch (Exception e1) {            return false;
        }
    }
}

操作のレンダリング

Java実践シェアリング~図書貸出システムの運用効果と課題~

クラス内でBor rowBooks.java、次のコードは、ユーザーが入力した金額が支払われる金額と一致しているかどうかを判断することを目的としています。矛盾している場合は、さまざまな方法を試しましたが、どれもまだ実装されていません。 little:

     while (bookPrice != x.nextInt())
                 {                 if (bookPrice > x.nextInt()) {                 int priceSpread = bookPrice - x.nextInt();//定义差价
                 System.out.println("------------" + "\n" + "您已付款"
                 + x.nextInt() + "元,还需支付" + priceSpread + "元");
                 }                 if (bookPrice <x.nextInt()) {                 int priceSpread = x.nextInt()-bookPrice ;//定义差价
             System.out.println("------------" + "\n" + "您已付款"
             + x.nextInt() + "元,找您" + priceSpread + "元");
                 }
                 }

関連記事:

Java例外機構を使った図書貸出システムのシミュレーション手順を詳しく解説

図書館システム初心者の方は質問してください

以上がJava実践シェアリング~図書貸出システムの運用効果と課題~の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。