У меня возникли проблемы с добавлением элементов из моего класса «Row» в мой класс «Таблица». Таблица классов расширяет ArrayList, поэтому каждый элемент массива должен содержать класс Row. Если я создаю таблицу классов и запускаю метод addApplicant (Row app) вручную, я могу добавить строку. Однако я бы хотел, чтобы строка автоматически добавила себя в таблицу классов, как только она будет создана. Вот мой код до сих пор: Таблица Класс:Добавление класса в ArrayList в другом классе
public class Table extends ArrayList<Row>{
public String appArray[];
/**
* Constructor for objects of class Table
*/
public Table()
{
}
public void addApplicant(Row app)
{
add(app);
}
public void listArray() //Lists the Array[]
{
for(int i = 0; i<appArray.length; i++)
{
System.out.println(appArray[i]);
}
}}
Row Класс:
public class Row{
private String appNumber;
private String name;
private String date;
private String fileLoc;
private String country;
public ArrayList<String> applicant;
public Row(String appNumber, String name, String date, String fileLoc, String country)
{
this.appNumber = appNumber;
this.name = name;
this.date = date;
this.fileLoc = fileLoc;
this.country = country;
applicant = new ArrayList<String>();
applicant.add(appNumber);
applicant.add(name);
applicant.add(date);
applicant.add(fileLoc);
applicant.add(country);
}
private void convertToString()
{
for(int i = 0; i<applicant.size(); i++)
{
String appStr = applicant.toString();
}
}}
Любые идеи, что я не хватает? Спасибо за любую помощь.
Добавьте экземпляр таблицы как параметр в конструктор строк. чем вызов от конструктора строки до: table.AddApplicantRow (this) –
Это плохой способ расширить ArrayList в вашем случае – bsiamionau