Vous pouvez également essayer une approche moderne - framework d'agrégation :
1) Trouver la 'valeur' maximale du tableau pour tous les éléments de la collection :
db.collection.aggregate([
{ $unwind: "$array" },
{ $group: { _id: "$_id", value: { $max: "$array.value" } } }
]);
2) Trouver la 'valeur' maximale du tableau pour l'élément spécifié :
db.collection.aggregate([
{ $match: { _id: new ObjectId("526d89571cd72ce9dbb6b443") } },
{ $unwind: "$array" },
{ $group: { _id: null, value: { $max: "$array.value" } } }
]);
Utiliser le vrai nom de la collection au lieu de collection
dans ces exemples.
Quelques informations sur l'utilisation de l'agrégation dans le pilote Java MongoDB :Pilote Java et framework d'agrégation .