You’ve been given a list of books to read over the summer, but you only want to read the books by a certain author. Write a method public List filterBooks(List readingList, String author) That takes a List of Books as a parameter, removes all Books from the readingList that are not written by the given author, then returns the resulting list. You can access the author of a Book by calling book.getAuthor(). The Book class is provided for reference.   public List filterBooks(List readingList, String author) { // Remove all Books from the readingList that are not // written by the given author. Return the resulting List    for(int i = 0; i < readingList.size(); i++) { //does current author == author? String currentBook = readingList.get(i); if(!currentBook.getAuthor().equals(author)) { readingList.remove(i); i--; } } return readingList; }   Book.java public class Book { private String title; private String author;    public Book(String theTitle, String theAuthor) { title = theTitle; author = theAuthor; }    public String getTitle() { return title; }    public String getAuthor() { return author; }    public String toString() { return title + " by " + author; }    public boolean equals(Book other) { return title.equals(other.title) && author.equals(other.author); }

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

You’ve been given a list of books to read over the summer, but you only want to read the books by a certain author.

Write a method

public List<Book> filterBooks(List<Book> readingList, String author)

That takes a List of Books as a parameter, removes all Books from the readingList that are not written by the given author, then returns the resulting list.

You can access the author of a Book by calling book.getAuthor(). The Book class is provided for reference.

 

public List<Book> filterBooks(List<Book> readingList, String author)
{
// Remove all Books from the readingList that are not
// written by the given author. Return the resulting List
  
for(int i = 0; i < readingList.size(); i++)
{
//does current author == author?
String currentBook = readingList.get(i);
if(!currentBook.getAuthor().equals(author))
{
readingList.remove(i);
i--;
}
}
return readingList;
}

 

Book.java

public class Book
{
private String title;
private String author;
  
public Book(String theTitle, String theAuthor)
{
title = theTitle;
author = theAuthor;
}
  
public String getTitle()
{
return title;
}
  
public String getAuthor()
{
return author;
}
  
public String toString()
{
return title + " by " + author;
}
  
public boolean equals(Book other)
{
return title.equals(other.title) && author.equals(other.author);
}
}

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY