IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

If avec contenu d'un array


Sujet :

Android

  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2014
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2014
    Messages : 154
    Points : 87
    Points
    87
    Par défaut If avec contenu d'un array
    Bonjour a tous, je voudrait savoir comment comparer avec un if tous les éléments d'une array sur un seul if, j'ai actuellement ce code ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (position == 1 || position == 4) {
                                view.setBackgroundColor(Color.parseColor("#008641"));
                                view.setBackgroundColor(Color.GREEN);
                            } else {
                            }
    et je me demandait si une boucle de ce style etait possible

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (position == Array.get(1)|| position == Array.get(4)) {
                                view.setBackgroundColor(Color.parseColor("#008641"));
                                view.setBackgroundColor(Color.GREEN);
                            } else {
                            }
    mon but étant de colorer les ligne d'un listview avec ce code mais uniquement les numéro de ligne que j'ai Stocker dans mon array...

    donc je ne doit faire que un seul if sinon ce sera uniquement le dernière élément de mon array qui prendra la couleur voulut...

    Merci d'avance!

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Je ne vois pourquoi tu parles de boucle au sujet de cet expression (il n'y en a aucune) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    f (position == Array.get(1)|| position == Array.get(4)) {
    C'est quoi cette variable Array ? C'est quoi son type (sa classe) ? Si tu parles d'un tableau Java, on aurait plutôt if ( position == array[1] || position == array[4] ). Cela dit, ceci n'a rien à voir avec ton premier test (position == 1 || position == 4) qui compare une variable de type int à 2 constantes de type int, alors que if ( position == array[1] || position == array[4] ) compare cette même variable au contenu de cases d'un tableau de type int.

    Par ailleurs, je ne vois pas ce qui te gêne au juste avec ton expression. Tu voudrais pouvoir faire quelque chose dans le genre :
    Code pasjava : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( position in (1,4, 5, 28, etc.) {
    , c'est ça ?
    A part utiliser un switch, ou une méthode utilitaire éventuellement, toutes autres moyens sera de toutes manières plus complexe et moins efficace que de faire comme tu montres, sauf cas très particuliers comme par exemple celui où les valeurs seraient contiguës, auquel cas, un test du genre if ( min<= position && position<=max ) pourrait être intéressant, ou autre exemple, s'il s'agit de tester des valeurs qui correspondent à une fonction simple (par exemple, si le test est du type de sélectionner les nombres paires avec if ( position%2==0 )).

    Ou alors la liste de valeurs à comparer est dynamique (varie à chaque test) ? (dans ce cas, on peut résoudre ça en passant éventuellement par une liste (en y mettant toutes les valeurs) et avec la méthode List.contains().
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. Réponses: 8
    Dernier message: 25/02/2006, 17h31
  2. [MySQL] unserialize avec contenu accentué
    Par localhost dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/01/2006, 18h46
  3. Flux RSS complet avec contenu de la section Delphi ?
    Par trident_job dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 4
    Dernier message: 02/01/2006, 14h48
  4. [vb excel]Probleme affichage de contenu d'une array
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/09/2005, 16h01
  5. Site web avec contenu payant
    Par Giill dans le forum E-Commerce
    Réponses: 6
    Dernier message: 17/08/2005, 21h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo