0

わかりましたので、これは私が持っているものです

public class Register {

    public String propertyID;
    public String PPSNumber;

    Register(String aPropertyID, String aPPSNumber) {
        propertyID = aPropertyID;
        PPSNumber = aPPSNumber;
    }

    public void setPPSNumber(String aPPSNumber) {
        PPSNumber = aPPSNumber;
    }

    public String getPPSNumber() {
        return PPSNumber;
    }

    public String getPropertyID() {
        return propertyID;
    }
}

それから私はこれを持っています

public static ArrayList<Register> registers = new ArrayList<Register>();

public static void main(String[] args) {

    String userInput1 = "", userInput2 = "", userInput3 = "";
    userInput1 = JOptionPane.showInputDialog("Enter your PPSNumber");
    userInput2 = JOptionPane.showInputDialog("Enter your propID");

    registers.add("number", "id");
}

ArrayList に追加できない理由がわかりません。クラス型を ArrayLists に追加する方法はありますか?

4

2 に答える 2

4

代わりにこれを試してください:

registers.add(new Register("number","id"));

編集1:質問に答えるには、別の「レジスタ」を作成し、ゲッターを使用できます:

Register aRegister = new Register("number","id");
registers.add(aRegister);
System.out.println(aRegister.getPropertyID()+" "+ aRegister.getPPSNumber());
于 2013-04-20T20:42:12.227 に答える
0

あなたListはタイプなので、クラスRegisterのオブジェクトのみを追加する必要があります。Register

必要な数の Register オブジェクトを作成しても問題ありません。

toString()クラス内にメソッドを実装すると、変数がオブジェクトで初期化されてRegisterいる場合、以下のsysoutが機能します。Java で toString() を適切にオーバーライドする方法を確認してください。toString の実装について知ること。registerRegister

System.out.println(register)
于 2016-03-12T19:09:13.140 に答える