import java.util.ArrayList;
import java.util.List;
class Member {
private String memberId;
private String name;
private List borrowedBooks;
public Member(String memberId, String name) {
if (memberId.length() != 6) {
throw new IllegalArgumentException("Member ID must be exactly 6 characters long.");
}
this.memberId = memberId;
this.name = name;
this.borrowedBooks = new ArrayList();
}
public String getMemberId() {
return memberId;
}
public String getName() {
return name;
}
public void borrowBook(Book book) {
if (borrowedBooks.size() < 3 && book.isAvailable()) {
borrowedBooks.add(book);
book.borrow();
} else {
throw new IllegalStateException("Cannot borrow book: either limit reached or book not available.");
}
}
public void returnBook(Book book) {
if (borrowedBooks.contains(book)) {
borrowedBooks.remove(book);
book.returnBook();
} else {
throw new IllegalArgumentException("This book was not borrowed by the member.");
}
}
public void printMemberInfo() {
System.out.print("Member ID: " + memberId + ", Name: " + name + ", Borrowed Books: ");
if (borrowedBooks.isEmpty()) {
System.out.println("None");
} else {
for (Book book : borrowedBooks) {
System.out.print(book.getTitle() + " ");
}
System.out.println();
}
}
}