Filtrer le contenu d’un tableau selon des critères
Fermé
marie12_2000
Messages postés
27
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
29 février 2020
-
3 déc. 2019 à 19:24
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 - 4 déc. 2019 à 07:45
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 - 4 déc. 2019 à 07:45
A voir également:
- Filtrer le contenu d’un tableau selon des critères
- Tableau croisé dynamique - Guide
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms. quel mot est formé par les 6 premières lettres de la colonne code ? - Forum Bureautique
- [<B>contenu masqué</b>] ✓ - Forum Android
- Afficher un tableau en c - Forum C
- Excel supprimer tableau sans le contenu ✓ - Forum Excel
1 réponse
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
Modifié le 3 déc. 2019 à 21:08
Modifié le 3 déc. 2019 à 21:08
Bonjour,
Je dirais que ça dépend beaucoup du type d'objet que tu manipules.
Tu peux regarder du côté des Expression Language :
Je dirais que ça dépend beaucoup du type d'objet que tu manipules.
Tu peux regarder du côté des Expression Language :
public class Toto {
public String getStr() {
return "toto";
}
public String[] getTab() {
return new String[] { "tata", "toto", "titi" };
}
}import javax.el.ELProcessor;
public class Test {
public static Object eval(String name, Object bean, String expression) {
ELProcessor proc = new ELProcessor();
proc.defineBean(name, bean);
return proc.eval(expression);
}
public static void main(String[] args) {
System.out.println(eval("x", new Toto(), "x.str == x.tab[0]")); // false
System.out.println(eval("x", new Toto(), "x.str == x.tab[1]")); // true
System.out.println(eval("x", new Toto(), "x.str == x.tab[2]")); // false
}
}
3 déc. 2019 à 21:12
3 déc. 2019 à 21:30
public class Produit { private double prix; public Produit(double prix) { this.prix = prix; } public double getPrix() { return prix; } }Produit[] produits = { new Produit(1), new Produit(2), new Produit(3), new Produit(4), new Produit(5) }; for (Produit produit : produits) { if ((boolean) eval("p", produit, "p.prix >= 2 && p.prix < 3.5")) { System.out.println(produit.prix); // 2.0; 3.0; } }3 déc. 2019 à 22:03
Mais comment est ce que je peux modifier les critères de sélection ( en tajouter , en supprimer ...)
3 déc. 2019 à 22:13
Parce que dans la mesure où les critères de sélection ne sont plus que des String, tu peux faire plus ou moins ce que tu veux, même les saisir au clavier...
4 déc. 2019 à 00:28