2016-05-26 7 views
-1

Я пытаюсь создать объект класса «Заемщик». Я пробовал все комбинации параметров, но это давало мне ошибку для всего. Не уверен, что происходит. Способ его установки - String, int, int, но когда я даю его в этом формате, он дает мне ошибку.Невозможно передать какие-либо параметры при создании объекта в Java

Вот изображение экрана параметров: enter image description here

Код класса заемщика является:

import java.util.ArrayList; 

public class Borrower { 
    private String name; 
    private int id; 
    private int age; 
    private ArrayList<Book> booklist; 

    public Borrower(String[] info) { 
     this.setName(info[0]); 
     this.setId(Integer.parseInt(info[1])); 
     this.setAge(Integer.parseInt(info[2])); 

     this.booklist = new ArrayList<Book>(); 
     if(info.length == 5) { 
      this.booklist.add(new Book(info[3], info[4], "")); 
     } else if(info.length == 6) { 
      this.booklist.add(new Book(info[3], info[4], info[5])); 
     } else if(info.length == 7) { 
      this.booklist.add(new Book(info[3], info[4], "")); 
      this.booklist.add(new Book(info[5], info[6], "")); 
     } else if(info.length == 8) { 
      this.booklist.add(new Book(info[3], info[4], info[5])); 
      this.booklist.add(new Book(info[6], info[7], info[8])); 
     } 
    } 

    public String getName() { 
     return name; 
    } 
    public void setName(String name) { 
     this.name = name; 
    } 
    public int getId() { 
     return id; 
    } 
    public void setId(int id) { 
     this.id = id; 
    } 
    public int getAge() { 
     return age; 
    } 
    public void setAge(int age) { 
     this.age = age; 
    } 
    public ArrayList<Book> getBooklist() { 
     return booklist; 
    } 
    public boolean addBook(Book book) { 
     if(this.booklist.size() < 2) { 
      this.booklist.add(book); 
      return true; 
     } 
     return false; 
    } 

    public boolean returnBook() { 
     if(this.booklist.size() > 0) { 
      this.booklist.remove(0); 
      return true; 
     } 
     return false; 
    } 

    public String toString() { 
     StringBuilder sb = new StringBuilder(); 
     sb.append(this.getName()); 
     sb.append("," + this.getId()); 
     sb.append("," + this.getAge()); 
     for(Book book : booklist) { 
      sb.append("," + book); 
     } 
     return sb.toString(); 
    } 
} 

Любая помощь здесь ценится.

Обновление: Скриншот ошибки: enter image description here

+2

«но это дает мне ошибку за все». - Какая ошибка? Пожалуйста, не оставляйте нас гадать. Пользователям не-bluej не понятно, что вы здесь делаете: обычно вы должны создавать экземпляр, вызывая конструктор * в коде *. –

+1

Не могли бы вы добавить код, вызывающий конструктор? –

+0

Привет, я добавил скриншот ошибки! Извини за это! –

ответ

1

Написать это так

{"Arvind" , "1" , "2"} 

Введите выше в диалоговом окне. В основном {} был недостающим идентификатором.

+0

Его еще одна ошибка, говорящая «Несовместимые типы»: int не может быть преобразован в java.lang.string, когда я вхожу выше –

+0

Извините, что я изменил свой ответ. Теперь он будет работать –

+0

Мне очень жаль. Извините, –

Смежные вопросы