Bei folgenden Testprogramm habe ich ein Problem.
Die Ausgabe sieht folgendermaßen aus:
Dabei sollte die erste Zeile so aussehen:
Was mache ich bitte falsch? Ich komm einfach nicht drauf :bahnhof:
(Wenn möglich, bitte nicht direkt die Lösung sagen, sondern nur Hinweise geben)
Die Ausgabe sieht folgendermaßen aus:
Code:
null0
Code:
ID: 2 Title: title2 Author: [author2.1, author2.2, author2.3, author2.4]
Code:
ID: 3 Title: title3 Author: [author3.1, author3.2, author3.3]
Dabei sollte die erste Zeile so aussehen:
Code:
ID: 1Title: title1 Author: [author1.1, author1.2, author1.3]
Java:
package b1.a2test;
import java.util.Vector;
public class Book {
//classvar
private long id;
private String title;
private Vector <String> authors;
private String publisher;
private Integer year;
private String isbn;
//constructor
public Book(long id){
this.id = id;
this.authors = new Vector <String> ();
this.publisher = "";
this.isbn = "";
this.year = null;
}
public long getId(){
return this.id;
}
public void setTitle(String title){
this.title = title;
}
public String getTitle(){
return this.title;
}
public void addAuthors(String author){
authors.add(author);
}
public Vector <String> getAuthors(){
return this.authors;
}
public void setPublisher(String publisher){
this.publisher = publisher;
}
public String getPublisher(){
return this.publisher;
}
public void setYear(int year){
this.year = year;
}
public int getYear(){
return this.year;
}
public void setIsbn(String isbn){
this.isbn = isbn;
}
public String getIsbn(){
return this.isbn;
}
}
Java:
package b1.a2test;
import java.util.Vector;
public class BookAdmin {
Vector <Book> books = new Vector <Book> ();
public void addBook(Book tmp){
books.add(tmp);
}
public String getBook(int id){
String s = "null"+id;
// System.out.println(books.get(0).getId());
for(int i = 0; i < books.size()-1; i++){
if (id == books.get(i).getId()){
s = "ID: "+books.get(id).getId()+" Title: "+books.get(id).getTitle()+" Author: "
+books.get(id).getAuthors();
}
}
return s;
}
}
Java:
package b1.a2test;
import java.util.Vector;
public class Main {
public static void main (String[] args){
Book book1 = new Book(1);
book1.setIsbn("isbn1");
book1.setPublisher("publisher1");
book1.setTitle("title1");
book1.setYear(2001);
book1.addAuthors("author1.1");
book1.addAuthors("author1.2");
book1.addAuthors("author1.3");
// System.out.println("ID: "+book1.getId()+" Title: "+book1.getTitle()+" Author: "
// +book1.getAuthors());
Book book2 = new Book(2);
book2.setIsbn("isbn2");
book2.setPublisher("publisher2");
book2.setTitle("title2");
book2.setYear(2002);
book2.addAuthors("author2.1");
book2.addAuthors("author2.2");
book2.addAuthors("author2.3");
book2.addAuthors("author2.4");
// System.out.println("ID: "+book2.getId()+" Title: "+book2.getTitle()+" Author: "
// +book2.getAuthors());
Book book3 = new Book(3);
book3.setIsbn("isbn3");
book3.setPublisher("publisher3");
book3.setTitle("title3");
book3.setYear(2003);
book3.addAuthors("author3.1");
book3.addAuthors("author3.2");
book3.addAuthors("author3.3");
// System.out.println("ID: "+book3.getId()+" Title: "+book3.getTitle()+" Author: "
// +book3.getAuthors());
BookAdmin ba1 = new BookAdmin();
ba1.addBook(book1);
ba1.addBook(book2);
ba1.addBook(book3);
System.out.println(ba1.getBook(0));
System.out.println(ba1.getBook(1));
System.out.println(ba1.getBook(2));
}
}
Was mache ich bitte falsch? Ich komm einfach nicht drauf :bahnhof:
(Wenn möglich, bitte nicht direkt die Lösung sagen, sondern nur Hinweise geben)
Zuletzt bearbeitet von einem Moderator: