【发布时间】:2016-12-30 10:18:31
【问题描述】:
我正在使用 Firebase 编写一个 Android 应用程序并希望将一个对象写入数据库:
public class newEvent {
public String whoEv;
public String whereEv;
public String whenEv;
public String whatEv;
public newEvent() {}
public newEvent(String whoEv, String whereEv, String whenEv, String whatEv) {
this.whoEv = whoEv;
this.whereEv = whereEv;
this.whenEv = whenEv;
this.whatEv = whatEv;
}
}
这可行,但正如您所见,它们都是“只是”字符串。我想要的是第一个参数是一个列表,Firebase 不允许 String[] 上传/写作。
原因是能够将更多名称作为分隔的Strings/Objects 传递到whoEv。 (给每个名字一个boolean,如果他们来或不来)。
现在回到确切的问题:
public newEvent(List<String> whoEv, String whereEv, String whenEv, String whatEv) {
this.whoEv = whoEv;
this.whereEv = whereEv;
this.whenEv = whenEv;
this.whatEv = whatEv;
}
当我使用它时,我不知道如何编写正确的代码:
newEvent test = new newEvent(List<String>("derp","max"), "Amsterdam", "31/12/2016", "NewYears Eve");
以上显然行不通。 Expression expected 或 unexpected token。我错过了什么或做错了什么?已经感谢您阅读本文!
编辑:使用List<String>如果我想用字符串传递布尔值的完全白痴想法......虽然不知道要使用什么。
【问题讨论】:
-
你可以试试 java.util.Arrays.asList(..) docs.oracle.com/javase/7/docs/api/java/util/Arrays.html
-
尝试使用这个构造函数 - 1) public newEvent(ArrayList
whoEv, String whereEv, String whenEv, String whatEv) {} 2) newEvent test = new newEvent(new ArrayList (" derp","max"), "阿姆斯特丹", -
@Arjit 看起来这就是解决方案,即使我收到错误消息:
Cannot resolve constructor 'ArrayList(java.lang.String, java.lang.String) -
是的,它不起作用。您需要创建一个 ArrayList
arr = new ArrayList();arr.add("derp");arr.add("max");将此 arr 传递给您的构造函数
标签: java android arraylist firebase firebase-realtime-database