2. Les types primitifs


2.1.    Les types entiers

2.1.1      Les différents types d’entiers

Type

Taille

(octets)

Valeur minimale

Valeur maximale

byte

1

-128

127

short

2

-32 768

32 767

int

4

-2 147 483 648

2 147 483 647

long

8

-9 223 372 036 854 775 808

9 223 372 036 854 775 807

Tab. 2.1 Quatre types entiers de Java


2.1.3      Déclaration des variables

public class TypeEntier {
      public static void main(String args[]){
            
byte bt;                                          //Entier byte non initialisé        
            
byte bt1 = 12;                              //Initialisation valeur décimale
             byte bt2 = 015, bt3 = 0xE;        //valeur octale et hexadecimale
            
short sh;
             short sh1 = 12, sh2 = -0145, sh3 = 0x1F2;
            
int en;      
            
int en1 = -12, en3 = 01450, en4 = -0x1A3F2;
            
long ln;
             long ln1 = 12, ln2 = 534L, ln3 = 01450L, ln4 = 0x1A3F2;
     
}
}


2.1.4      Représentation mémoire

2                 00000010                   02
3                 00000011                   03
-2               11111110                   FE
-3               11111101                   FD

public class Debord {
      public static void main(String args[]){
             byte bt = 127;
             bt++;
             System.out.println("bt = "+ bt);
     
}
}

2.2.    Les types flottants

Type

Taille en

octets

chiffres

significatifs

Valeur absolue minimale

Valeur absolue maximale

float

4

7

1.40239846E-45

3.40282347E38

double

8

15

4.9406564584124654E-324

1.797693134862316E308

Tab. 2.2 Deux types flottants de Java

 2.2.2    Notation des constantes flottantes

15.43         -0.28          -.28     4.

4.25E4            4.25e+4          42.5E3

54.27E-32            542.7E-33            5427e-34

48e13        48.e13       48.0E13

4.25E4f                 4.25E4F

2.2.3    Déclaration des variables flottantes

public class TypeFlottante {
    public static void main(String args[]){
        float ft;                                            //non initialisé   
        float ft1 = 12, ft2 = 12.1f, ft3 = 12.5E8F;        //avec initialisations
        double db;
        double db1 = 12, db2 = 12.1, db3 = 12.5E8;       
    }
}

2.3    Le type caractère


2.3.1    Notation des constantes de type caractère

'a'       'E'       'é'        '+'

Notation

Unicode

(hexadécimal)

Abréviation usuelle

Signification

\b

0008

BS (Backspace)

Retour arrière

\t

0009

HT(Horizonta tabulation)

Tabulation horizontale

\n

000A

LF(Line feed)

Saut de ligne

\f

000C

FF(Form feed)

Saut de page

\r

000D

CR (Cariage return)

Retour chariot

\"

0022

 

guillemet

\'

0027

 

apostrophe

\\

005C

 

le caractère "\"

Tab 2.3 Les caractères disposant d’une notation spéciale

'\141'        le caractère 'a'            en octale ( entre 0 et 255)
'\143'        le caract
ère 'c'

'\u0061'        le caractère 'a'         en hexadécimale (entre 0 et 65535)
'\u0063'        le caractère 'c'

codage local (sur 8 bits)

2.3.2    Déclaration des variables caractères

public class TypeChar {
    public static void main(String args[]){
        char c;
        char c1 = 'a', c2 = '\141', c3 = '\u0061';
        char c4 = '\"', c5 = '\n';
    }
}
2.4    Le type booléen

true     false

2.4.1    Déclaration des variables booléens

public class TypeBool {
    public static void main(String args[]){
        boolean bl;
        boolean bl1= true, bl2 = false;
    }
}

2.5    Variable non initialisées

2.6    Le mot-clé final


final int n = 20 ;
n = n + 5 ; // erreur : n a été déclarée final

public class VarFinal {
    public static void main(String args[]){
        final int k =20;  //initialisation dans la declaration
        final  double d;
        d = Math.random();    //initialisation pendant l'exécution   
    }
}