这里Book对象属性都是String,如果Book对象的属性类型不一样,还是要做判断
静态方法只能引用静态变量,不能引用实例变量。所以要加static,之前的构建是在函数里面构建,在函数里面构建book实例变量不属于实例变量,因此不用设为静态变量。
用switch语句确实更好!!
没有必要
你的 bookList 是 Element 类型,所以不能 add一个Book类型的对象。你可以新创建一个 List<Book> myBook 进行add
正常,因为有两个book节点,节点解析了两次(在for循环中循环了两次),而你的booksList的foreach遍历在这个循环中,所以遍历了两次,而且第一次遍历booksList集合只有第一本书的内容,所以只输出第一本书的内容,第二次遍历有两本书的内容,所以输出两本书的内容,这也是为什么运行结果中生成xml文档的第一本书生成了两遍的原因
我就是初学者,一个月前你上述的6条全满足,现在对于查api还是不是很熟悉,正在努力学习基础中。目前在看《Java核心技术》这本书,但是书太厚了,只看了一小部分,大多数的时间就是跟进项目,从实践中学习
package com.test; public class Book { private String id; private String name; private String author; private String year; private String price; private String language; @Override public String toString() { return ("id->"+id+"\nname->"+name+"\nauthor->"+author+"\nyear->"+year+"\nprice->"+price+"\nlanguage->"+language); } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getYear() { return year; } public void setYear(String year) { this.year = year; } public String getPrice() { return price; } public void setPrice(String price) { this.price = price; } public String getLanguage() { return language; } public void setLanguage(String language) { this.language = language; } }
bookList是声明了的,Element book为自定义一个Element对象,名为book,bookList每次取值都赋给book
要有s,建立的ArrayList 是 booksList
因为有两本书呀。每循环一次就必须新建一个Book对象。