gpt4 book ai didi

Android Firebase 阵列

转载 作者:行者123 更新时间:2023-11-29 17:05:50 31 4
gpt4 key购买 nike

我正在为云数据库使用 Firebase 编写一个 Android 应用程序。它基本上是一个多项选择调查问题应用程序。导入到我的 Firebase

{
"multiple_choice" : {
"-K2222222222" : {
"question" : "Question text",
"opt1" : "answer 1",
"opt2" : "answer 2",
"opt3" : "answer 3"
}
}
}

我像这样添加一个 MultipleChoice 类

public class MultipleChoice {

private String id;
private String question;
private String opt1;
private String opt2;
private String opt3;

public MultipleChoice() {
}

public MultipleChoice(String question, String opt1, String opt2, String opt3) {
this.question = question;
this.opt1 = opt1;
this.opt2 = opt2;
this.opt3 = opt3;
}

public void setQuestion(String question) {
this.question = question;
}

public String getOpt1() {
return opt1;
}

public void setOpt1(String opt1) {
this.opt1 = opt1;
}

public String getOpt2() {
return opt2;
}

public void setOpt2(String opt2) {
this.opt2 = opt2;
}

public String getOpt3() {
return opt3;
}

public void setOpt3(String opt3) {
this.opt3 = opt3;
}

public String getQuestion() {
return question;
}

}

这允许我使用 Firebase 引用在主类中检索此数据。

现在我想把它变成一个选项数组,尽管 FB 实际上并不是那样工作的,所以它可以采用任意数量的选项而不是固定的 3 或其他任何选项。这个json文件加载到FB

{
"multiple_choice" : {
"-K2222222222" : {
"question" : "Should Britian leave the EU?",
"options" : {
"1" : "answer 1",
"2" : "answer 2",
"3" : "answer 3"
},
}
}
}

但我不知道如何在 MultipleChoice 类中添加方法。以及如何获得数组效果的想法,以便我可以检索 options[0] 等或 options/"1"?

最佳答案

数组从索引0开始,所以你的数据库结构应该是

{
"multiple_choice" : {
"-K2222222222" : {
"question" : "Should Britian leave the EU?",
"options" : {
"0" : "answer 1",
"1" : "answer 2",
"2" : "answer 3"
}
}
}
}

以及每个 multiple_choice 的模型类

public class MultipleChoice {
private String id;
private String question;
private List<String> options;

public List<String> getOptions() {
return options;
}

public void setOptions(List<String> options) {
this.options = options;
}

... constructor and other getter setter...
}

这是一个如何从列表中检索每个选项的示例

MultipleChoice multipleChoice = dataSnapshot.getValue(MultipleChoice.class);
String firstOption = multipleChoice.getOptions().get(0);
String secondOption = multipleChoice.getOptions().get(1);
String thirdOption = multipleChoice.getOptions().get(2);

希望这有帮助:)

关于Android Firebase 阵列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41745506/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com