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

Langage Java Discussion :

Type boolean MIN_VALUE || MAX_VALUE


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2005
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 6
    Par défaut Type boolean MIN_VALUE || MAX_VALUE
    Bonjour

    Voilà ma question, je n'arrive pas à savoir le minimum booléen et le maximum booléen via MIN_VALUE et MAX_VALUE.

    J'ai du les initialiser à false et true

    ----------------------------------------------------------------------------------------------------
    ----------------------------------------------------------------------------------------------------



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    // ValLimTypPrim.java
    // Programme d'écriture des valeurs limites des types primitifs
    // Ce programme donne les valeurs minimums et maximums de chacun des types
    // entiers et réels avec les constantes MAX_VALUE et MIN_VALUE
     
    class ValLimTypPrim {
     
    public static void main (String [] args) {
     
    	byte b1 = Byte.MIN_VALUE ; // le plus petit byte
    	byte b2 = Byte.MAX_VALUE ; // le plus grand byte
    	short s1 = Short.MIN_VALUE ; // le plus petit short
    	short s2 = Short.MAX_VALUE ; // le plus grand short
    	int i1 = Integer.MIN_VALUE ; // le plus petit entier
    	int i2 = Integer.MAX_VALUE ; // le plus grand entier
    	long l1 = Long.MIN_VALUE ; // le plus petit long
    	long l2 = Long.MAX_VALUE ; // le plus grand long
    	float f1 = Float.MIN_VALUE ; // le plus petit décimal, float
    	float f2 = Float.MAX_VALUE ; // le plus grand décimal, float
    	double d1 = Double.MIN_VALUE ; // le plus petit double
    	double d2 = Double.MAX_VALUE ; // le plus grand double
    	boolean bo1 = true; // le plus petit booléen
    	boolean bo2 = false; // le plus grand booléen
    	char c1 = Character.MIN_VALUE ; // le plus petit caractère
    	char c2 = Character.MAX_VALUE ; // le plus grand caractère
     
    	System.out.println ("le plus petit byte       :: " + b1);
    	System.out.println ("Le plus grand byte       :: " + b2);
    	System.out.println ("Le plus petit short      :: " + s1);
    	System.out.println ("Le plus grand short      :: " + s2);
    	System.out.println ("Le plus petit entier     :: " + i1);
    	System.out.println ("Le plus grand entier     :: " + i2);
    	System.out.println ("Le plus petit long       :: " + l1);
    	System.out.println ("Le plus grand long       :: " + l2);
    	System.out.println ("Le plus petit float      :: " + f1);
    	System.out.println ("Le plus grand float      :: " + f2);
    	System.out.println ("Le plus petit double     :: " + d1);
    	System.out.println ("Le plus grand double     :: " + d2);
    	System.out.println ("Le plus petit booléen    :: " + bo1);
    	System.out.println ("Le plus grand booléen    :: " + bo2);
    	System.out.println ("Le plus petit caractère  :: " + c1);
    	System.out.println ("Le plus grand caractère  :: " + c2);
     
    	}
    }


    Explication::: Ici le code est tout à fait opérationnel

    Sauriez-vous pourquoi les constantes MAX_VALUE et MIN_VALUE ne fonctionnent pas pour le type boolean?


    byte : entier signé sur 8bits
    short : entier signé sur 16 bits
    int : entier signé sur 32 bits
    long : entier signé sur 64 bits
    float : réel sur 32 bits
    double : réel sur 64 bits
    boolean : true ou false
    char : caractère Unicode sur 16 bits

    Merci (G8


    Bxflash

  2. #2
    Membre confirmé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2005
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2005
    Messages : 175
    Par défaut
    ceci est un avis pas un réponse :

    Parce que définir un MAx ou un MIN pour booleen ne veut rien dire. Alors en c, par exemple il n'y a pas de type booleen et pour true pon prend 1 et pour false on prend 0. Mais ici, ce n'est pas le cas, false et true ne se rapportent pas a des valeurs numeriques.

    rien ne permet d'affirmer que true est plus grand que false.

    C'est très philosophique, plus que technique

  3. #3
    Membre confirmé Avatar de soulhouf
    Inscrit en
    Août 2005
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 213
    Par défaut
    tout simplement parce que ça n'existe pas pour un Boolean.
    de toute façon ça ne veut rien dire un max ou un min pour les booleans.

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Il n'y a tout simplement pas de notion de valeur minimum ou maximum sur les booleens... Dire que true est plus petit que false n'a aucun sens...

    a++

  5. #5
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    303
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 303
    Par défaut
    ca n'existe pas tout simplement parcequ'il n'y aucun interet à comparer "true" et "false", sinon en utilisant Boolean.valueOf(String arg), tu verra que tout les mots sont "false" sauf evidemment "true"

    chuss

  6. #6
    Nouveau membre du Club
    Inscrit en
    Juin 2005
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 6
    Par défaut
    Bonjour

    Donc dans la pratique, les constantes MIN_VALUE et MAX_VALUE ne fonctionnent
    pas avec le type booléen.

    le type booléen non-initialisé vaut toujours false,
    Et ceci:: Le type boolean ne peut recevoir que 2 valeurs : true ou false et n'est pas compatible avec un type numérique.

    ("j'arrête là ma question, il y a beaucoup de chemin à parcourir, ne nous arrêtons
    pas en cours pour chercher plus compliqué (je parle pour moi)")

    Un tout grand merci, à très bientôt

    Bxflash

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Oracle 10g XE et le type boolean
    Par ayoub2010 dans le forum Oracle
    Réponses: 2
    Dernier message: 09/04/2007, 20h14
  2. Type boolean et Auto Incrémente
    Par mouloudéen dans le forum SQL
    Réponses: 2
    Dernier message: 03/04/2007, 21h42
  3. Réponses: 1
    Dernier message: 16/03/2007, 11h46
  4. [oracle 8i] type boolean
    Par yasinfo dans le forum Oracle
    Réponses: 6
    Dernier message: 18/06/2006, 16h48
  5. [débutant] type boolean!!!
    Par just1980 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 10/08/2005, 10h47

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