-3

クラス「Row」からクラス「Table」に要素を追加するのに問題があります。クラス Table は ArrayList を拡張するため、arrayList の各要素にはクラス Row が含まれている必要があります。クラス テーブルを作成し、addApplicant(Row app) メソッドを手動で実行すると、行を追加できます。ただし、行が作成されるとすぐに自動的にクラス テーブルに追加されるようにしたいと考えています。これまでの私のコードは次のとおりです。テーブルクラス:

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]);
    }
}}

行クラス:

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();
        }
}}

私が欠けているもののアイデアはありますか?助けてくれてありがとう。

4

1 に答える 1

2

テーブル クラスへの参照がありません。できることは、 Table オブジェクトがコンストラクターに渡されるように要求することです。したがって、コンストラクターは次のようになります。

 public Row(String appNumber, String name, String date, String fileLoc, String country, Table table)

そして電話する

table.addApplicant(this);

行オブジェクトへの情報の読み込みが完了したら。これにより、この行オブジェクトへの参照がテーブルに追加されます:)

于 2013-02-25T14:33:05.207 に答える