[英]Retrofit - JSON Array Parsing
我正在使用Retrofit
解析JSON Array
,其中JSON Array看起來像:
"hobbies": [ "Music", "Reading"]
這是我的JSON
樣子:
{
"type":"success",
"value":[
{
"id":1,
"title":"Title - 1",
"name":{
"first":"First - 1",
"last":"Last - 1"
},
"hobbies":[
"Writing Code - 1",
"Listening Music - 1"
]
},
.....
]
}
Value.java
private List<String> hobbies = new ArrayList<String>();
Adapter.java
viewHolder.hobbies.setText(value.getHobbies().toString());
當我運行程序時,我正在getting data
,如下所示:
[Music, Reading]
因此, 問題是Why
我的輸出也得到[]
。
Value.java
public class Value {
@SerializedName("id")
@Expose
private Integer id;
@SerializedName("title")
@Expose
private String title;
@SerializedName("hobbies")
@Expose
private List<String> hobbies = new ArrayList<String>();
@SerializedName("name")
@Expose
private Name name;
.....
public List<String> getHobbies() {
return hobbies;
}
public void setHobbies(List<String> hobbies) {
this.hobbies = hobbies;
}
}
Service.java
public interface Service {
@GET("/demo_retrofit.json")
Observable<Master> getMaster();
}
實際上是value.getHobbies();
用[ ]
直接返回一個List
。 更好地iterate
並通過使用StringBuilder
iterate
顯示
MD和傑克遜是對的。 Object.toString()
方法返回一個“以文本形式表示”此對象的字符串。 因此,對於您的情況,興趣愛好是一個arrayList,因此文本表示形式將帶有[]
。 ;)
編輯:
您可能要為此使用for循環:
for (String hobby : hobbies) {
// Do something with hobby here
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.