為什么booklist.add(bokEntity)中的add報錯
package?com.imooc.dom4jtest; import?java.awt.print.Book; import?java.io.File; import?java.util.ArrayList; import?java.util.Iterator; import?java.util.List; import?org.dom4j.Attribute; import?org.dom4j.Document; import?org.dom4j.DocumentException; import?org.dom4j.Element; import?org.dom4j.io.SAXReader; public?class?DOM4JTest?{ ?private?final?static?ArrayList<Book>?booksList?=?new?ArrayList<Book>(); ?public?static?void?main(String[]?args)?{ ??//?解析books.xml文件 ??//?創建SAXReader的對象reader ??SAXReader?reader?=?new?SAXReader(); ??try?{ ???//?通過reader對象的read方法加載books.xml文件,獲取document對象 ???Document?document?=?reader.read(new?File("src/books.xml")); ???//?通過document對象獲取根節點bookStore?目的:遍歷根節點和子節點信息 ???Element?bookStore?=?document.getRootElement(); ???//?通過element對象的elementIterator方法獲取迭代器 ???Iterator?it?=?bookStore.elementIterator(); ???//?遍歷迭代器獲取根節點中的信息(書籍) ???while(it.hasNext()){ ????com.imooc.entity.Book?bookEntity?=?new?com.imooc.entity.Book(); ????System.out.println("====開始遍歷某一本書===="); ????Element?book?=?(Element)?it.next();//next方法返回的是Object類型?但遍歷的是節點類型Element ????//?獲取book的屬性名和屬性值 ????List<Attribute>?bookattrs?=?book.attributes(); ????for?(Attribute?attr?:?bookattrs)?{ ?????System.out.println("屬性名"?+?attr.getName()?+?"----屬性值:"?+?attr.getValue()); ?????if(attr.getName().equals("id")){ ??????bookEntity.setId(attr.getValue()); ?????} ????} ????Iterator?itt?=?book.elementIterator(); ????while(itt.hasNext()){ ?????Element?bookchild?=?(Element)?itt.next(); ?????System.out.println("節點名:"?+?bookchild.getName()+?"----節點值:"?+?bookchild.getStringValue()); ?????if(bookchild.getName().equals("name")){ ??????bookEntity.setName(bookchild.getStringValue()); ?????} ?????else?if(bookchild.getName().equals("year")){ ??????bookEntity.setYear(bookchild.getStringValue()); ?????} ?????else?if(bookchild.getName().equals("author")){ ??????bookEntity.setAuthor(bookchild.getStringValue()); ?????} ?????else?if(bookchild.getName().equals("price")){ ??????bookEntity.setPrice(bookchild.getStringValue()); ?????} ?????else?if(bookchild.getName().equals("language")){ ??????bookEntity.setLanguage(bookchild.getStringValue()); ?????} ????} ????System.out.println("====結束遍歷某一本書===="); ????booksList.add(bookEntity); ????bookEntity?=?null; ???} ??}?catch?(DocumentException?e)?{ ???//?TODO?Auto-generated?catch?block ???e.printStackTrace(); ??} ?} }
報錯信息是:
The method add(java.awt.print.Book) in the type ArrayList<Book> is not applicable for the arguments (com.imooc.entity.Book)
2017-02-20
這個是Java awt組件里面的包,你要導入的是你自己建立的Book類對象所在的包。
2017-02-18
import?java.awt.print.Book;
導錯包了