Привет всем, у меня проблемы с моей Java-программой. По сути, я пишу программу, которая запрашивает у пользователя название книги, автора, цену и isbn. Затем он принимает входные данные, которые хранят его, в мой класс Book, в котором хранятся входные данные, и имеет метод toString, который печатает содержимое, аналогичное форматированию JSON.
Затем мой класс books использует список Array для хранения объектов Book и имеет метод toString, который распечатывает весь набор книг в формате JSON. Проблема в том, что он неправильно форматирует. Проблема заключается в моем утверждении if и else в моем коде. Вот мой код:
import java.util.ArrayList;
public class Books
{
private ArrayList<Book> books;
public Books()
{
books = new ArrayList<Book>();
}
public void add(Book bk)
{
books.add(bk);
}
public String toString()
{
String temp = "{\n ";
temp = temp + " \"books:\": [\n";
int bookCount = 0;
for (Book bk : books) {
temp += bk.toString();
bookCount++;//add +1 to bookcount
if (bookCount < books.size()-1) {
temp += ",\n";
}
else {
temp += "\n ]\n}\n";
}
}
return temp;
}
}
Когда я запускаю свою программу, она выглядит так:
Результаты
Моя цель, чтобы это выглядело так:
WantedResults
Так что после правильного разбора первой книги, добавив ", \ n"; , Но каждая книга анализируется после добавления "\ n] \ n} \ n"; который я только хочу добавить в последний. :( Пожалуйста, помогите.
Заранее спасибо