我在java中有一个User Class:
public class User {
private int id;
private String name,email,password;
private Collection<Book> books;
public User(String name, String email, String password) {
this.name = name;
this.email = email;
this.password = password;
}
public Collection<Book> getBooks() {
return books;
}
public void setBooks(Collection<Book> books) {
this.books = books;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
我省略了持久性的符号
我在java中有一个用户列表,每个用户都有一个书籍集,
现在我需要用他的书籍集打印每个用户
我有一个DAO,其方法可以返回我数据库的所有用户
我想说:
private List<User> userList = UserDAO.getAll();
现在我拥有了所有用户。
现在要获取我的用户的书籍列表我有这个:
private Collection <Book> = user.getBooksCollection();
并且以这种方式我拥有Mno的集合,但是具有特定用户的集合
我需要用他各自的书籍集(但只有书的名称)打印每个用户
因为我的Book类有各种属性,我只需要每个具有Book名称的用户。
但我不知道怎么做。
你能帮助我吗?
答案 0 :(得分:1)
像
这样的东西for(User user : userList)
{
System.out.println(user.getName()); // XXX
for(Book book : user.getBooksCollection())
{
System.out.println(" " + book.getTitle()); // XXX
}
}
如果标记为XXX
的行已经组成了方法名称,那么您需要替换为您调用它们的任何内容。
打印出如下列表:
John Smith Book Title A Book Title B Bob Smith Book Title A Book Title C
但使用Collection
界面似乎很奇怪。你确定你不能深入到堆栈中吗?说,List
?
答案 1 :(得分:1)
查找for ...每个循环的示例,您可以使用它来遍历您的Users集合。然后,对于每个用户,打印用户的东西,检索书籍集合,并使用for ... each循环来遍历用户书籍。如果你做得对,你得到2个嵌套for循环。祝你好运!