2015-11-19 165 views
0
VkUsersResponce qwe = gsonBuilder.create().fromJson("{\"response\":[{\"id\":1,\"first_name\":\"Павел\",\"last_name\":\"Дуров\",\"sex\":2}]}", VkUsersResponce.class); 

public class VkUsersResponce { 
    @Getter 
    @Setter 
    private List<VkUser> responce; 
} 

public class VkUser { 
    @Getter 
    @Setter 
    private int sex; 

    @Getter 
    @Setter 
    private long id; 

    @Getter 
    @Setter 
    private String firstName; 

    @Getter 
    @Setter 
    private String lastName; 
} 

qwe實際上是nullGson填充問題

+2

寫更多的行,並在最後提出一個問題,你想要什麼,實際上你說它是空的。所以只需輸入更多關於該問題的信息。 – kwoxer

回答

0

您的JSON字段名稱和Java對象名稱必須匹配。

從您的JSON - 「響應\」與's'。
從你的對象 - 「響應」與'C'。

要麼改變你的領域是 「響應」,或使用SerializedName像 -

@SerializedName("response") 
private List<VkUser> responce; 

你將有一個類似的問題與firstName VS first_name。您可以使用GsonBuilder.setFieldNamingPolicy來避免註釋每個字段。請參閱LOWER_CASE_WITH_UNDERSCORES

+0

是的,我昨天發現了這個錯誤,謝謝你的回覆。 – Lebedevsd