Je travaillais à trouver un meilleur moyen de filtrer le contenu d'une arrayliste
Par exemple, ce programme a une arracheListe principale appelée "Étudiants", puis j'ai fait d'autres sublistes du contenu de cette liste (Oldstudents, Youngstudents , stupides, stupides, smartstudents. L'objectif est de filtrer la arrayliste basée sur le choix de l'utilisateur des étudiants (jeunes, anciens, intelligents ou stupides) p> Il fonctionne mais je crois qu'il y a Un meilleur moyen d'atteindre ce p> p>
3 Réponses :
Vous pouvez utiliser cette approche:
class Student { String name; boolean old; boolean stupid; } List<Student> students = initializeListOfStudents(); // alter these flags accordingly to your needs Boolean old = null; Boolean stupid = true; // then do the filter List<Student> allStupids = students.stream() .filter(it -> (old==null || it.old == old) && (stupid==null || it.stupid==stupid)) .collect(Collectors.toList());
Java est une langue Créer un Vous pouvez maintenant filtrer facilement, par exemple p> Etudiante Code> Classe avec 3 champs:
Nom de la chaîne code>,
booléen OLD code> et
boolean intelligent code >. Ajouter des méthodes getter. P>
Dans Java 8, vous pouvez utiliser le flux pour filtrer la liste. Dans ce lien, vous pouvez trouver différents exemples: p>
1er Insérez toutes ces liste dans la liste des étudiants ...
Sauf si vous avez besoin de fonctionnalités supplémentaires incluses dans la classe, il est préférable d'affecter le type d'interface. Et vous pouvez également créer une liste mutable en faisant quelque chose comme
list stupide = nouveau arrayliste <> (list.of ("stupide1", "stupide2")); code> Il existe également d'autres moyens d'utiliser flux () et collectionneurs.