亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? library.java

?? 經典的數據結構算法
?? JAVA
字號:
import java.io.*;
import java.util.LinkedList;

class Author {
    public String name;
    public BookList books = new BookList();
    public Author() {
    }
    public boolean equals(Object node) {
        return name.equals(((Author) node).name);
    }
    public void display() {
        System.out.println(name);
        books.display();
    }
}

class Book {
    public String title;
    public Patron patron = null;
    public Book() {
    }
    public boolean equals(Object node) {
        return title.equals(((Book) node).title);
    }
    public String toString() {
        return "    * " + title +
           (patron != null ? " - checked out to " + patron.name : "") + "\n";
    }
}

class CheckedOutBook {
    public Author author = null;
    public Book book = null;
    public CheckedOutBook() {
    }
    public boolean equals(Object node) {
        return book.title.equals(((CheckedOutBook) node).book.title) &&
               author.name.equals(((CheckedOutBook) node).author.name);
    }
    public String toString() {
        return "    * " + author.name + ", " + book.title + "\n";
    }
}

class Patron {
    public String name;
    public BookList books = new BookList();
    public Patron() {
    }
    public boolean equals(Object node) {
        return name.equals(((Patron) node).name);
    }
    public void display() {
        if (!books.isEmpty()) {
             System.out.println(name + " has the following books:");
             books.display();
        }
        else System.out.print(name + " has no books");
    }
}

class AuthorList extends LinkedList {
    public AuthorList() {
        super();
    }
    public void display() {
        Object[] authors = toArray();
        for (int i = 0; i < authors.length; i++)
            ((Author)authors[i]).display();
    }
}

class BookList extends LinkedList {
    public BookList() {
        super();
    }
    public void display() {
        for (int i = 0; i < size(); i++)
            System.out.print(get(i));
    }
}

class PatronList extends LinkedList {
    public PatronList() {
        super();
    }
    public void display() {
        for (java.util.Iterator it = iterator(); it.hasNext(); )
             ((Patron)it.next()).display();
    }
}
    
class Library {
    private AuthorList[] catalog = new AuthorList[(int)('Z'+1)];
    private PatronList[] people = new PatronList[(int)('Z'+1)];
    private String input;
    private BufferedReader buffer = new BufferedReader(
                                    new InputStreamReader(System.in));
    public Library() {
        for (int i = 0; i <= (int) 'Z'; i++) {
            catalog[i] = new AuthorList();
            people[i] = new PatronList();
        }
    }
    private String getString(String msg) {
        System.out.print(msg + " ");
        System.out.flush();
        try {
            input = buffer.readLine();
        } catch(IOException io) {
        }
        return input.substring(0,1).toUpperCase() + input.substring(1);
    }
    private void status() {
        System.out.println("Library has the following books:\n ");
        for (int i = (int) 'A'; i <= (int) 'Z'; i++)
            if (!catalog[i].isEmpty())
                catalog[i].display();
        System.out.println("\nThe following people are using the library:\n ");
        for (int i = (int) 'A'; i <= (int) 'Z'; i++)
            if (!people[i].isEmpty())
                people[i].display();
    }
    private void includeBook() {
        Author newAuthor = new Author();
        int oldAuthor;
        Book newBook = new Book();
        newAuthor.name = getString("Enter author's name:");
        newBook.title  = getString("Enter the title of the book:");
        oldAuthor = catalog[(int) newAuthor.name.charAt(0)].indexOf(newAuthor);
        if (oldAuthor == -1) {
             newAuthor.books.add(newBook);
             catalog[(int) newAuthor.name.charAt(0)].add(newAuthor);
        }
        else ((Author)catalog[(int) newAuthor.name.charAt(0)].get(oldAuthor)).
             books.add(newBook);
    }
    private void checkOutBook() {
        Patron patron = new Patron(), patronRef;
        Author author = new Author(), authorRef = new Author();
        Book   book   = new Book();
        int patronIndex, bookIndex = -1, authorIndex = -1;
        patron.name = getString("Enter patron's name:");
        while (authorIndex == -1) {
            author.name = getString("Enter author's name:");
            authorIndex = catalog[(int) author.name.charAt(0)].indexOf(author);
            if (authorIndex == -1)
                System.out.println("Misspelled author's name");
        }
        while (bookIndex == -1) {              
            book.title = getString("Enter the title of the book:");
            authorRef = (Author) catalog[(int) author.name.charAt(0)].get(authorIndex);
            bookIndex = authorRef.books.indexOf(book);
            if (bookIndex == -1)
                System.out.println("Misspelled title");
        }
        Book bookRef = (Book) authorRef.books.get(bookIndex);
        CheckedOutBook bookToCheckOut = new CheckedOutBook();
        bookToCheckOut.author = authorRef;
        bookToCheckOut.book   = bookRef;
        patronIndex = people[(int) patron.name.charAt(0)].indexOf(patron);
        if (patronIndex == -1) {        // a new patron in the library;
             patron.books.add(bookToCheckOut);
             people[(int) patron.name.charAt(0)].add(patron);
             bookRef.patron = (Patron) people[(int) patron.name.charAt(0)].getFirst();
        }
        else {
             patronRef = (Patron) people[(int) patron.name.charAt(0)].get(patronIndex);
             patronRef.books.add(bookToCheckOut);
             bookRef.patron = patronRef;
        }
    }
    private void returnBook() {
        Patron patron = new Patron();
        Book book = new Book();
        Author author = new Author(), authorRef = new Author();
        int patronIndex = -1,  bookIndex = -1, authorIndex = -1;
        while (patronIndex == -1) {
            patron.name = getString("Enter patron's name:");
            patronIndex = people[(int) patron.name.charAt(0)].indexOf(patron);
            if (patronIndex == -1)
                System.out.println("Patron's name misspelled");
        }
        while (authorIndex == -1) {
            author.name = getString("Enter author's name:");
            authorIndex = catalog[(int) author.name.charAt(0)].indexOf(author);
            if (authorIndex == -1)
                System.out.println("Misspelled author's name");
        }
        while (bookIndex == -1) {
            book.title = getString("Enter the title of the book:");
            authorRef = (Author) catalog[(int) author.name.charAt(0)].get(authorIndex);
            bookIndex = authorRef.books.indexOf(book);
            if (bookIndex == -1)
                System.out.println("Misspelled title");
        }
        CheckedOutBook checkedOutBook = new CheckedOutBook();
        checkedOutBook.author = authorRef;
        checkedOutBook.book   = (Book) authorRef.books.get(bookIndex);
        ((Book)authorRef.books.get(bookIndex)).patron = null;
        ((Patron)people[(int) patron.name.charAt(0)].get(patronIndex)).
                books.remove(checkedOutBook);
    }
    public void run() {
        while (true) {
            char option = getString("\nEnter one of the following options:\n" +
                                    "1. Include a book in the catalog\n" +
                                    "2. Check out a book\n" +
                                    "3. Return a book\n4. Status\n5. Exit\n" +
                                    "Your option:").charAt(0);
            switch (option) {
                case '1': includeBook();  break;
                case '2': checkOutBook(); break;
                case '3': returnBook();   break;
                case '4': status();       break;
                case '5': return;
                default: System.out.println("Wrong option, try again.");
            }
        }
    }
    public static void main(String args[]) {
        (new Library()).run();
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区日本| 玉足女爽爽91| 91精品国产综合久久精品麻豆| 成人综合婷婷国产精品久久蜜臀 | 国产成人综合亚洲91猫咪| 午夜精品国产更新| 人人超碰91尤物精品国产| 热久久久久久久| 蜜桃av噜噜一区| 久久99最新地址| 风间由美一区二区av101| 国产寡妇亲子伦一区二区| 国产精品一区二区久久精品爱涩| 国产精品一级在线| 国产丶欧美丶日本不卡视频| 成人av网站大全| 精品视频999| 欧美大片在线观看一区| 国产亚洲一区二区三区| 亚洲欧美综合网| 亚洲成人激情社区| 精品综合久久久久久8888| 成人激情免费视频| 欧美片网站yy| 久久精品视频网| 一区二区在线观看视频在线观看| 亚洲成人免费观看| 国产麻豆精品theporn| 99精品在线观看视频| 欧美精品日韩综合在线| 久久亚洲一级片| 亚洲伦理在线精品| 免费一区二区视频| 91在线视频免费观看| 3d动漫精品啪啪一区二区竹菊| 精品日韩一区二区三区免费视频| 国产精品欧美综合在线| 午夜伊人狠狠久久| 国产不卡视频在线播放| 91久久香蕉国产日韩欧美9色| 欧美一区二区三区不卡| 国产精品久久久久久久久免费樱桃 | 久久成人18免费观看| 成人福利在线看| 欧美伦理影视网| 国产精品高潮呻吟久久| 国产一区二区电影| 欧美精品v日韩精品v韩国精品v| 国产欧美日产一区| 美国毛片一区二区三区| 欧美三级视频在线观看| 中文字幕中文字幕一区二区| 琪琪久久久久日韩精品| 欧美视频一区在线| 自拍视频在线观看一区二区| 国产伦精一区二区三区| 91精品国产一区二区三区蜜臀 | 亚洲成a人在线观看| 99在线热播精品免费| 26uuu精品一区二区| 亚洲二区视频在线| 91免费看视频| 国产精品久久久久久久久果冻传媒 | 久久婷婷综合激情| 亚洲成人资源网| 在线免费观看一区| 亚洲精品国产一区二区三区四区在线 | 色av综合在线| 亚洲欧美日韩系列| 99精品欧美一区二区蜜桃免费 | 97国产一区二区| 中文字幕av免费专区久久| 国内久久精品视频| 精品99一区二区三区| 日本中文字幕一区二区有限公司| 欧美亚洲一区三区| 亚洲一区二区成人在线观看| www.亚洲人| 成人免费在线播放视频| 色综合久久中文综合久久97| 亚洲欧美在线视频观看| 色综合久久综合网欧美综合网 | 欧美精品v国产精品v日韩精品 | av毛片久久久久**hd| 国产丝袜美腿一区二区三区| 国产乱理伦片在线观看夜一区 | 国产精品进线69影院| 99久久精品国产毛片| 一区免费观看视频| 欧美私模裸体表演在线观看| 性欧美大战久久久久久久久| 欧美一区二区三区男人的天堂| 美女诱惑一区二区| 国产日韩欧美高清在线| 菠萝蜜视频在线观看一区| 综合久久综合久久| 欧美日本一道本| 韩国v欧美v亚洲v日本v| 国产精品久久久久久亚洲伦| 欧美视频一区在线观看| 精品制服美女久久| 国产精品麻豆欧美日韩ww| 欧美在线观看视频一区二区三区 | 欧美一区二区三区性视频| 免费成人av资源网| 国产精品国产三级国产a | 老司机精品视频一区二区三区| 久久夜色精品一区| 在线观看三级视频欧美| 免费观看日韩电影| 亚洲人成在线观看一区二区| 日韩一区二区在线免费观看| 国产盗摄一区二区| 日韩和欧美一区二区三区| 国产免费久久精品| 欧美日韩精品欧美日韩精品| 福利91精品一区二区三区| 无码av中文一区二区三区桃花岛| 国产欧美精品区一区二区三区| 欧美日韩国产小视频在线观看| 国内久久婷婷综合| 午夜国产精品影院在线观看| 国产精品美女一区二区在线观看| 欧美一卡二卡三卡| 一本到高清视频免费精品| 极品瑜伽女神91| 午夜激情一区二区三区| 综合在线观看色| 久久久精品国产99久久精品芒果 | 国产美女视频一区| 日韩高清在线电影| 亚洲人成亚洲人成在线观看图片| 26uuu精品一区二区三区四区在线| 欧美视频一区二区三区在线观看 | 精品欧美乱码久久久久久| 色欧美乱欧美15图片| 成人国产精品免费观看视频| 激情欧美一区二区| 蜜桃久久精品一区二区| 午夜电影网亚洲视频| 亚洲自拍偷拍麻豆| 亚洲人妖av一区二区| 国产精品久久久久久亚洲伦| 国产人成一区二区三区影院| 精品久久久久久久人人人人传媒| 欧美在线观看18| 一本到高清视频免费精品| 色综合天天视频在线观看| 国产精品123区| 激情综合色综合久久综合| 青青草国产成人99久久| 日韩精品一区第一页| 日本三级韩国三级欧美三级| 日韩高清欧美激情| 美国av一区二区| 精品在线观看免费| 国产一区二区剧情av在线| 国内精品国产三级国产a久久| 久久99精品久久久久久久久久久久| 美女mm1313爽爽久久久蜜臀| 麻豆一区二区三| 国产精品99久久不卡二区| 国产成人免费9x9x人网站视频| 大白屁股一区二区视频| aaa亚洲精品| 欧美又粗又大又爽| 69p69国产精品| 久久亚洲精品小早川怜子| 亚洲国产精品国自产拍av| 1000部国产精品成人观看| 亚洲欧美色一区| 午夜视频久久久久久| 久久电影网站中文字幕| 国产精品69毛片高清亚洲| 一本久久a久久精品亚洲| 欧美精品在线一区二区三区| 日韩欧美精品三级| 国产精品久久久久aaaa樱花| 亚洲精品你懂的| 狂野欧美性猛交blacked| 国产a视频精品免费观看| 欧美日韩成人综合天天影院 | 国产精品私房写真福利视频| 中文字幕一区二区三区蜜月| 一区二区三区四区高清精品免费观看| 午夜电影久久久| 国产91精品在线观看| 欧美无人高清视频在线观看| 日韩一区二区三区视频在线观看| 国产亚洲精品资源在线26u| 有码一区二区三区| 久久91精品久久久久久秒播| 91在线码无精品| 欧美成人aa大片| 亚洲另类春色国产| 国内精品国产成人国产三级粉色 | 日日噜噜夜夜狠狠视频欧美人| 狠狠久久亚洲欧美| 欧美日韩视频不卡| 国产精品嫩草影院com|