簡體   English   中英

將元素添加到數組列表 - Java

[英]Adding elements to array list - Java

我有一個 class 文件

public class Name {
    private String id;

    public String getId() {
        return id;
    }
}

這是測試文件

CollectionType javaType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, Name.class);
ArrayList<Names> nameList = mapper.readValue(json, javaType);
for (Names nameValue : nameList) {
    List<String> id = new ArrayList<>();
    id.add(nameValue.getId());
System.out.println(id);

json

[{"id":"1"},{"id":"2"}]

在 JSON output 中有多個 id,我試圖將它們存儲在一個列表中,但它只添加第一個(“1”),我如何將它們存儲在一個列表中。 請幫忙

問題是您遍歷名稱列表,並在 for 循環中在每次迭代期間創建一個新的ArrayList 您想在循環外創建ArrayList

CollectionType javaType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, Name.class);
ArrayList<Names> nameList = mapper.readValue(json, javaType);
List<String> id = new ArrayList<>();
for (Names nameValue : nameList) {
    id.add(nameValue.getId());
}
System.out.println(id);

循環的每次迭代都在創建一個新的id列表。 在循環之外聲明該列表,它將向其中添加元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM