如果您必須使用Java ...我建議您將書籍數據封裝在Book
類中。您的圖書館可以將書籍存儲在HashMap
中,以提供快速訪問和可擴展性。實際上,您可以將多個HashMaps結合使用,讓您根據其任何功能(例如作者或流派)訪問該書。
的Book
類可能是這樣的:
class Book{
HashMap<String, String> features;
public Book(){
this.features= new HashMap<String,String>();
}
public HashMap<String, String> getFeatures() {
return features;
}
public String addFeature(String key,String value){
return features.put(key, value);
}
public void addFeatures(HashMap<String, String> newFeatures){
this.features.putAll(newFeatures);
}
}
你Library
類可以使用包含HashMap的一個HashMap:
HashMap<String,HashMap<String,Book>> library;
因此,訪問了一本書,你叫
public Book getBook(String featureType,String key){
return library.get(featureType).get(key);
}
featureType
字符串指定您是否正在尋找根據作者,流派,描述等來撰寫書籍。key
是特定作者的名字。例如,要獲得Bob Smith的書籍,您可以使用getBook("author","Bob Smith");
。
public void addBookToLibrary(Book book){
HashMap<String,String> bookFeatures = book.getFeatures();
for(String featureType : bookFeatures.keySet()){
HashMap<String,Book> libraryFeatureMap = library.get(featureType);
libraryFeatureMap.put(bookFeatures.get(featureType), book);
}
}
爲什麼不使用一些這方面的離線數據庫:
如下您可以添加圖書的圖書館嗎?您將獲得SQL的強大功能,並且會消耗更少的資源 – WeMakeSoftware