「Java」リスト(ArrayList)にクラスのオブジェクト(object)を格納するサンプル
説明
1.リストの宣言
protected static List<クラス名> devLst = new ArrayList<クラス名>();
2.クラスのオブジェクト追加
java.util.List.add(オブジェクト)
サンプルコード
1.DevInfoクラスの定義
package com.arkgame.study;
public class DevInfo {
protected String userId;
protected String devName;
/**
* @param userId
* @param devName
*/
public DevInfo(String userId, String devName) {
super();
this.userId = userId;
this.devName = devName;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getDevName() {
return devName;
}
public void setDevName(String devName) {
this.devName = devName;
}
}
2.ListObjectDemo.java
package com.arkgame.study;
import java.util.ArrayList;
import java.util.List;
public class ListObjectDemo {
// List<クラス名>
protected static List<DevInfo> devLst = new ArrayList<DevInfo>();
/**
* @return devLst
*/
public List<DevInfo> getDevLst() {
return devLst;
}
/**
* @param devLst
* セットする devLst
*/
@SuppressWarnings("static-access")
public void setDevLst(List<DevInfo> devLst) {
this.devLst = devLst;
}
public static void main(String[] args) {
// ListObjectDemoオブジェクト生成
ListObjectDemo lstObj = new ListObjectDemo();
// List<クラス名>生成
List<DevInfo> cftLst = new ArrayList<DevInfo>();
// DevInfoオブジェクト生成
DevInfo cftA = new DevInfo("1001", "dev_A");
DevInfo cftB = new DevInfo("1002", "dev_B");
DevInfo cftC = new DevInfo("1002", "dev_B");
// リストにオブジェクト追加
cftLst.add(cftA);
cftLst.add(cftB);
cftLst.add(cftC);
// リストのセット関数
lstObj.setDevLst(cftLst);
System.out.println("サイズ:" + lstObj.getDevLst().size());
for (DevInfo devInfo : devLst) {
System.out.println("user_id: " + devInfo.getUserId() + " dev_name: " + devInfo.getDevName());
}
}
}
実行結果
サイズ:3
user_id: 1001 dev_name: dev_A
user_id: 1002 dev_name: dev_B
user_id: 1002 dev_name: dev_B