FAQ Langage JavaConsultez toutes les FAQ
Nombre d'auteurs : 42, nombre de questions : 297, dernière mise à jour : 19 septembre 2017 Ajouter une question
Cette FAQ a été réalisée à partir des questions fréquemment posées sur le forum Java de http://java.developpez.com ainsi que l'expérience personnelle des auteurs.
Nous tenons à souligner que cette FAQ ne garantit en aucun cas que les informations qu'elle propose sont correctes. Les auteurs font leur maximum, mais l'erreur est humaine. Cette FAQ ne prétend pas non plus être complète. Si vous trouvez une erreur, ou que vous souhaitez nous aider en devenant rédacteur, lisez ceci.
Sur ce, nous vous souhaitons une bonne lecture.
Il est possible de représenter une valeur booléenne en Java en utilisant le type primitif boolean. Ce type ne peut avoir que deux valeurs :
- true - la valeur « vrai » ;
- false - la valeur « faux ».
Par exemple :
Code Java : | Sélectionner tout |
1 2 | boolean vrai = true; boolean faux = false; |
De plus, ce type primitif dispose d'une classe wrapper équivalente qui permet de manipuler ces valeurs comme des objets : java.lang.Boolean.
Code Java : | Sélectionner tout |
1 2 | Boolean vrai = new Boolean(true); // On évitera cependant cette manière de faire (voir plus bas). Boolean faux = new Boolean(false); // Même chose. |
Ou encore grâce à l'auto-boxing :
Code Java : | Sélectionner tout |
1 2 | Boolean vrai = true; Boolean faux = false; |
De plus, la classe java.lang.Boolean dispose de deux constantes publiques statiques destinées à être utilisées en tant que singleton, ce qui permet d’éviter d'avoir à allouer de la mémoire pour de nouvelles instances :
Code Java : | Sélectionner tout |
1 2 | Boolean vrai = Boolean.TRUE; Boolean faux = Boolean.FALSE; |
En Java, tous les tests et toutes les conditions sont des expressions qui retournent des valeurs de type boolean. Contrairement à d'autres langages, la valeur false et le nombre 0 ne sont pas équivalents.
Pour inverser la valeur d'un booléen, vous devez utiliser l’opérateur ! (« négation » ou « inverse » ou « non » ou not). Par exemple :
Code Java : | Sélectionner tout |
1 2 3 | boolean a = true; boolean b = !a; // b vaut false. boolean c = !b; // c vaut true. |
Table de vérité
a | !a (négation) |
---|---|
false | true |
true | false |
Pour comparer des booléens entre eux, vous devez utiliser les opérateurs conditionnels == (« égalité » ou equals to) ou != (« différence » ou different from ou is not). Par exemple :
Code Java : | Sélectionner tout |
1 2 3 4 | boolean a = true; boolean b = false; boolean c = a == b; // c vaut false. boolean d = a != b; // d vaut true |
Table de vérité
a | b | a == b (égalité) | a != b (différence) |
false | false | true | false |
false | true | false | true |
true | false | false | true |
true | true | true | false |
Pour composer des booléens entre eux, vous devez utiliser les opérateurs conditionnels (conditional) && (« conjonction » ou « et » ou conditional and) et || (« disjonction » ou « ou » ou conditional or). Par exemple :
Code Java : | Sélectionner tout |
1 2 3 4 | boolean a = true; boolean b = false; boolean c = a && b; // c vaut false. boolean d = a || b; // d vaut true. |
Il est également possible d'utiliser les opérateurs logiques (« bit à bit » ou logical) & (« produit » ou « et logique » ou logical and), | (« somme » ou « ou logique » ou logical inclusive or) et ^ (« disjonction exclusive » ou logical exclusive or ou xor). Par exemple :
Code Java : | Sélectionner tout |
1 2 3 4 5 | boolean a = true; boolean b = false; boolean c = a & b; // c vaut false. boolean d = a | b; // d vaut true. boolean e = a ^ b; // d vaut true. |
Les opérateurs d'affectation correspondants sont :
&& (conjonction) | || (disjonction) | & (produit) | | (somme) | ^ (disjonction exclusive) |
pas d’équivalent | pas d’équivalent | &= | |= | ^= |
Table de vérité
a | b | a && b (conjonction) | a || b (disjonction) | a & b (produit) | a | b (somme) | a ^ b (disjonction exclusive) |
false | false | false | false | false | false | false |
false | true | false | true | false | true | true |
true | false | false | true | false | true | true |
true | true | true | true | true | true | false |
Pour convertir un booléen en chaîne de caractères, vous pouvez utiliser les diverses variantes de la méthode toString() de la classe java.lang.Boolean. Par exemple :
Code Java : | Sélectionner tout |
1 2 3 4 | boolean a = true; String s1 = Boolean.toString(a); Boolean b = Boolean.FALSE; String s2 = b.toString(); |
Il est également possible d'invoquer l'une des variantes de la méthode publique statique valueOf() de la classe String.
Pour convertir une chaîne de caractères en booléen, vous pouvez invoquer la méthode publique statique parseBoolean() de la classe java.lang.Boolean. Cette méthode retourne la valeur true si et seulement si la chaine passée en paramètre est équivalente à la chaine "true" en ignorant la casse (majuscules/minuscules). Toute autre valeur pour ce paramètre retourne la valeur false. Par exemple :
Code Java : | Sélectionner tout |
1 2 3 4 5 6 | String s1 = "True"; boolean a = Boolean.parseBoolean(s1); // a vaut true. String s2 = "yes"; boolean b = Boolean.parseBoolean(s2); // b vaut false. String s3 = "false"; boolean c = Boolean.parseBoolean(s3); // c vaut false. |
Vous pouvez également utiliser constructeur de la classe java.lang.Boolean qui prend un paramètre une instance de String. Le nouvel objet est équivalent à Boolean.TRUE si et uniquement si la chaine passée en paramètre est équivalente à la chaine "true" en ignorant la casse (majuscules/minuscules). Toute autre valeur pour ce paramètre créera un objet équivalent à Boolean.FALSE.
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.