Tôi đang cố gắng để tạo ra một số đối tượng Java sử dụng dòng này:Gson fromJson() trả về đối tượng với attrubutes rỗng
Quiz currentQuiz = gson.fromJson(json, Quiz.class);
Nhưng tất cả tôi nhận được là:
Đây là các lớp đối tượng của tôi:
Câu hỏi:
public class Quiz {
private String ref;
private String broadcast_dt;
private Question[] questions;
public Quiz() {
// TODO Auto-generated constructor stub
}
public String getRef() {
return ref;
}
public void setRef(String ref) {
this.ref = ref;
}
public String getBroadcast_dt() {
return broadcast_dt;
}
public void setBroadcast_dt(String broadcast_dt) {
this.broadcast_dt = broadcast_dt;
}
public Quiz(String ref, String broadcast_dt, Question[] questions) {
super();
this.ref = ref;
this.broadcast_dt = broadcast_dt;
this.questions = questions;
}
public Question[] getQuestions() {
return questions;
}
public void setQuestions(Question[] questions) {
this.questions = questions;
}
}
Câu hỏi:
public class Question {
private int question_number;
private String question_text;
private Answer[] answers;
public Question(){
}
public Question(int question_number, String question_text, Answer[] answers) {
super();
this.question_number = question_number;
this.question_text = question_text;
this.answers = answers;
}
public int getQuestion_number() {
return question_number;
}
public void setQuestion_number(int question_number) {
this.question_number = question_number;
}
public String getQuestion_text() {
return question_text;
}
public void setQuestion_text(String question_text) {
this.question_text = question_text;
}
public Answer[] getAnswers() {
return answers;
}
public void setAnswers(Answer[] answers) {
this.answers = answers;
}
}
Trả lời:
public class Answer {
private String answer_text;
private boolean correct_yn;
public Answer(){
}
public String getAnswer_text() {
return answer_text;
}
public void setAnswer_text(String answer_text) {
this.answer_text = answer_text;
}
public boolean isCorrect_yn() {
return correct_yn;
}
public void setCorrect_yn(boolean corrent_yn) {
this.correct_yn = corrent_yn;
}
}
Và đây là JSON của tôi:
{
"quiz": {
"ref": "45g36745bu46",
"broadcast_dt": "2013-03-03T00:00:00Z",
"questions": [
{
"question_number": 1,
"question_text": "Example question one",
"answers": [
{
"answer_text": "Answer one",
"correct_yn": false
},
{
"answer_text": "Answer two",
"correct_yn": true
},
{
"answer_text": "Answer three",
"correct_yn": false
}
]
},
{
"question_number": 2,
"question_text": "Question number two",
"answers": [
{
"answer_text": "Something",
"correct_yn": false
},
{
"answer_text": "Something else",
"correct_yn": false
},
{
"answer_text": "Another thing",
"correct_yn": true
}
]
},
{
"question_number": 3,
"question_text": "And a third question with some additional question text appearing here.",
"answers": [
{
"answer_text": "Cow",
"correct_yn": false
},
{
"answer_text": "Pig",
"correct_yn": true
}
]
}
]
}
}
Bất cứ ý tưởng tại sao điều này xảy ra? Tôi không nhận được thông báo lỗi hoặc đầu ra LogCat.
bạn đã kiểm tra giá trị của json trước dòng đó chưa ?. chính nó có thể là vô giá trị! – SKK
Tôi có, nó không phải là null. Nó giống với những gì được dán ở trên. Chúc mừng mặc dù :) –