我怎样才能达到使用通用 class 列表添加和创建的两个值
How can I reach to the two values added and created with generic class list
如何访问使用通用 class 列表添加和创建的两个值?我创建了一个带有 2 个变量 (tag_id) 和 (rssi) 的通用 class。
通用 Class
@Getter
@Setter
@Data
public class Test<T>{
public int tag_id;
public float rssi;
public List<T> list = new ArrayList<>();
public Test() {
}
}
RFID Class
@Getter
@Setter
@Data
public class RFID extends Test {
public RFID(float rssi) {
this.rssi = rssi;
}
标签Class
@Getter
@Setter
@Data
public class Tag extends Test {
public Tag(int tag_id) {
this.tag_id = tag_id;
}
主要Class
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)]
。我可以达到这两个值,但不能达到嵌套类型,我可以将值添加到我的测试列表,但我想输出嵌套类型。
如果您想为单个标签添加多个 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(", ")) + "]]");
}
}
如何访问使用通用 class 列表添加和创建的两个值?我创建了一个带有 2 个变量 (tag_id) 和 (rssi) 的通用 class。
通用 Class
@Getter
@Setter
@Data
public class Test<T>{
public int tag_id;
public float rssi;
public List<T> list = new ArrayList<>();
public Test() {
}
}
RFID Class
@Getter
@Setter
@Data
public class RFID extends Test {
public RFID(float rssi) {
this.rssi = rssi;
}
标签Class
@Getter
@Setter
@Data
public class Tag extends Test {
public Tag(int tag_id) {
this.tag_id = tag_id;
}
主要Class
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)]
。我可以达到这两个值,但不能达到嵌套类型,我可以将值添加到我的测试列表,但我想输出嵌套类型。
如果您想为单个标签添加多个 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(", ")) + "]]");
}
}