如何獲得使用通用類串列添加和創建的兩個值?我創建了一個帶有 2 個變數 (tag_id) 和 (rssi) 的通用類。
通用類
@Getter
@Setter
@Data
public class Test<T>{
public int tag_id;
public float rssi;
public List<T> list = new ArrayList<>();
public Test() {
}
}
RFID類
@Getter
@Setter
@Data
public class RFID extends Test {
public RFID(float rssi) {
this.rssi = rssi;
}
標簽類
@Getter
@Setter
@Data
public class Tag extends Test {
public Tag(int tag_id) {
this.tag_id = tag_id;
}
主班
public static void main(String[] args) {
List<Test> testlist = new ArrayList<>();
testlist.add(new Tag(1));
testlist.add(new RFID(1));
}
我想這樣的輸出:[1(tag_id), [1.0,2.0,3.0](rssi)]。我可以訪問這兩個值,但不能訪問嵌套型別,我可以將值添加到我的測驗串列中,但我想輸出嵌套型別。
uj5u.com熱心網友回復:
如果您想為單個標簽添加多個 RFID,請將您的代碼撰寫為:
public static void main(String[] args) {
SpringApplication.run(Demo3Application.class, args);
List<Test> testlist = new ArrayList<>();
testlist.add(new Tag(1));
testlist.get(0).list.add(new RFID(1));
testlist.get(0).list.add(new RFID(66));
testlist.add(new Tag(2));
testlist.get(1).list.add(new RFID(2));
testlist.get(1).list.add(new RFID(77));
for (Test test: testlist) {
System.out.println("[" test.getTag_id() ", [" test.getList().stream().map(i -> String.valueOf(i)).collect(Collectors.joining(", ")) "]]");
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/394062.html
