ArrayList add()方法返回空或空firebase java



我正面临一个奇怪的局面。相信我。刚开始使用Firestore数据库。我有一个集合如下,

List<String> myStringList = new ArrayList<String>(); 
ApiFuture<QuerySnapshot> apiFutureResults = query.get();
QuerySnapshot querySnapshot = apiFutureResults.get();
List<QueryDocumentSnapshot> documents = querySnapshot.getDocuments();
for(QueryDocumentSnapshot document: documents)
{
log.debug(document.getString("myColumnName")); //prints value successfully
String myString = document.getString("myColumnName"); // Same value assigned to String type.
log.debug("Value of myString", myString);  //prints value successfully
log.debug("Result is ::",myStringList.add(myString)); // prints empty or blank.
log.debug("Arraylist size::", myStringList.size()); // Returns empty or blank.
log.debug("Arraylist content::", myStringList); // Returns empty or blank  }

我期待true后添加。在我的例子中,我得到myStringList.add(myString);空返回。从QueryDocumentSnapshot (com.google.cloud.firestore)获取字符串。在什么情况下ArrayList.add()方法返回空?或者这种从Firestore获取记录的方法是否有问题?这不是android应用程序。只是一个Java产品。

您的代码正在打印myStringList.add()返回的值。我怀疑这不是你想要的。输出add()的结果对于调试目的似乎不是很有用。

也许你想做的是首先首先将项目添加到列表中,然后打印列表的内容

myStringList.add(myString);
log.debug("Result is ::",myStringList); // print the list

您可能还想在之后打印列表循环完成,但不是每次迭代。

最新更新