所以,讓我們說我有一個類來描述一本書訪問對象類變量的ArrayList(JAVA)
public class Book {
String name;
int pages;
String auother;
boolean available;
String rentername;
}
現在,我已成立一個數組列表,包含圖書的數目不詳我希望在運行時間內有/添加/刪除。 事情是,當我嘗試通過索引訪問arraylist中的某本書時,出現錯誤。
enter code here
ArrayList Books = new ArrayList();
Book bk1 = new Book();
Books.add(bk1);
System.out.println(Books[0]. --->>> won't give me accesses to the 'Book' class variables (name, pages...)
那麼,我怎樣才能使它的類變量? 謝謝。
當我使用getmethood時,我無法獲得書本對象varibable(名稱,頁面等)......我只能查看通用對象方法,如qeuals/get class/HashCode ... – user3921
第一個問題你使用的是'List'的vanellia版本,它接受任何類型的Object,但只返回一個Object,你可以通過1.將結果轉換回一個'Book'( 'Book book =(Book)Books.get(0)'),但這是危險的,應該儘量避免。2.利用'泛型',這基本上限制'List'只處理某些類型的' Objects'。我已經用示例更新了我的帖子,但您可能希望閱讀[Generics Trail](http://docs.oracle.com/javase/tutorial/java/generics/)以獲取更多信息 – MadProgrammer