MongoIterable.forEach
, Java 8 Consumer
'a çok benzeyen bir Block
gerektirir. , örneğin, aşağıdaki derleme değil Bunlar sorunlara neden olacak kadar benzer: derleyici Iterable.forEach(Consumer)
ve MongoIterable.forEach(Block)
arasında karar veremezMongoIterable.forEach vs. Iterable.forEach
MongoIterable<Document> result = collection.find(...);
result.forEach(System.out::println);
çünkü. alternatif
Block<Document> printer = System.out::println;
result.forEach(printer);
veya bir düz Stream
olarak MongoIterable
tedavi:
MongoIterable.forEach
Consumer
arabirimini kullanarak tanımlı değil
StreamSupport.stream(result.spliterator(), false).forEach(System.out::println);
, gibi bir şey: MongoIterable.forEach(Consumer<? super TResult> consumer)
bu açıkça parametreyi yazarak gibi geçici çözümler gerektirir Tespit? Daha da iyisi - neden MongoIterable
'da forEach
var?
Bu, Tüketici'nin neden kullanılmadığını açıklıyor, ancak neden daha önce MongoIterable.forEach'a sahip olduğu konusunda hala net değilim. Java 8 kullanıcılarına Java 8 benzeri bir deneyim kazandırmak mı? –
Daha kolay hale getirilmesi amaçlandı. Bu hedefe ulaşılırsa jüri hala dışarıda. – evanchooly
"forEachMongo" (veya belki daha havalı bir isim?) Gibi ad sınıfından kaçınmak için farklı bir ada sahip olmak güzel olurdu. Neyse ki basit bir yazı türü sorunu çözüyor. –