У меня есть простой фрагмент, как показано ниже. Я упомянул this
List<Document> list = new LinkedList<Document>();
FindIterable<Document> itr = collection.find(findQuery)
.forEach((Document doc) -> list.add(doc));
return list;
Компилируется без проблем.
- Я предполагаю, что мы говорим компилятору, что
doc
имеет тип Document
. Зачем это нужно?
Но если я сделаю следующее, это выдаст неоднозначную ошибку. Я упомянул это Но не мог точно сказать и понять.
collection.find(findQuery).forEach(list::add);
Может кто-нибудь объяснить, почему не работает второе утверждение?
Есть ли лучший способ написания первого [рабочий one] ?
Java версия: 1.8.0_231
операторы импорта:
import java.util.List;
import java.util.Optional;
import com.mongodb.client.FindIterable;
import org.bson.Document;