Types de données de base Java


Les variables s'appliquent à la mémoire pour stocker les valeurs. En d’autres termes, lors de la création d’une variable, vous devez demander de l’espace en mémoire.

Le système de gestion de la mémoire alloue de l'espace de stockage aux variables en fonction de leur type, et l'espace alloué ne peut être utilisé que pour stocker des données de ce type.

memorypic1.jpg

Ainsi, en définissant des variables de différents types, des entiers, des décimaux ou des caractères peuvent être stockés en mémoire.

Les deux principaux types de données de Java :

  • Type de données intégré

  • Type de données de référence


Types de données intégrés

Le langage Java propose huit types de base. Six types numériques (quatre entiers, deux types à virgule flottante), un type caractère et un type booléen.

octet:

  • Le type de données octet est un entier signé de 8 bits représenté en complément à deux

  •  ; La valeur minimale est -128 (-2 ^ 7);

  • La valeur maximale est de 127 (2 ^ 7-1);

  • La valeur par défaut est 0 ;

  • Le type byte est utilisé pour économiser de l'espace dans les grands tableaux, remplaçant principalement les entiers, car la variable byte n'occupe qu'un quart de l'espace du type int

  • ; Exemple : octet a = 100, octet b = -50.

court:

  • Le type de données court est un entier complémentaire à deux signé de 16 bits

  • La valeur minimale est -32768 (-2^15)

  • ; La valeur maximale est 32767 (2^15 - 1)

  •  ; Le type de données Short peut également économiser de l'espace comme l'octet. Une variable courte représente la moitié de l'espace occupé par une variable de type int

  • La valeur par défaut est 0 ;

  • Exemple : court s = 1000, court r = -20000.

int:

  • Le type de données int est un entier signé de 32 bits représenté en complément à deux

  • ; La valeur minimale est -2 147 483 648 (-2 ^ 31);

  • La valeur maximale est de 2 147 483 647 (2 ^ 31 - 1

    ) ;
  • Généralement, les variables entières sont par défaut de type int

  • La valeur par défaut est 0 ;

  • Exemple : int a = 100 000, int b = -200 000.

long:

  • Le type de données long est un entier signé de 64 bits représenté en complément à deux

  •  ; La valeur minimale est -9 223 372 036 854 775 808 (-2^63) ; La valeur maximale est 9 223 372 036 854 775 807 (2^63 -1) ; Ce type est principalement utilisé dans les systèmes qui doivent comparer de grands entiers

  • ; La valeur par défaut est 0L ;

  • Exemple : long a = 100 000L, Long b = -200 000L.

  • flotteur:
  • Le type de données float est un nombre à virgule flottante simple précision de 32 bits conforme à la norme IEEE 754

 ; float peut économiser de l'espace mémoire lors du stockage de grands tableaux à virgule flottante

  • La valeur par défaut est 0,0f ;

  • Les nombres à virgule flottante ne peuvent pas être utilisés pour représenter des valeurs précises, telles que la devise

  • ; Exemple : float f1 = 234,5f.

  • double:
  • Le type de données double est un nombre à virgule flottante double précision, 64 bits, conforme à la norme IEEE 754

 ; Le type par défaut des nombres à virgule flottante est double ;

  • Le type double ne peut pas non plus représenter des valeurs précises, telles que la devise

  • ; La valeur par défaut est 0,0d ;

  • Exemple : double d1 = 123,4.

  • booléen:
  • Le type de données booléen représente un bit d'information

Il n'y a que deux valeurs : vrai et faux

  • Ce type n'est utilisé que comme indicateur pour enregistrer les situations vraies/fausses

     ;
  • La valeur par défaut est fausse ;

  • Exemple : booléen un = vrai.

char:

  • Le type char est un seul caractère Unicode de 16 bits

  • ; La valeur minimale est « u0000 » (c'est-à-dire 0) ;

  •  ; La valeur maximale est « uffff » (soit 65 535) ;

  •  ; Le type de données char peut stocker n'importe quel caractère

  • Exemple : lettre de caractère = 'A'.


Instance

public class PrimitiveTypeTest {  
    public static void main(String[] args) {  
        // byte  
        System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);  
        System.out.println("包装类:java.lang.Byte");  
        System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);  
        System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);  
        System.out.println();  
  
        // short  
        System.out.println("基本类型:short 二进制位数:" + Short.SIZE);  
        System.out.println("包装类:java.lang.Short");  
        System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);  
        System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);  
        System.out.println();  
  
        // int  
        System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);  
        System.out.println("包装类:java.lang.Integer");  
        System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);  
        System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);  
        System.out.println();  
  
        // long  
        System.out.println("基本类型:long 二进制位数:" + Long.SIZE);  
        System.out.println("包装类:java.lang.Long");  
        System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);  
        System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);  
        System.out.println();  
  
        // float  
        System.out.println("基本类型:float 二进制位数:" + Float.SIZE);  
        System.out.println("包装类:java.lang.Float");  
        System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);  
        System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);  
        System.out.println();  
  
        // double  
        System.out.println("基本类型:double 二进制位数:" + Double.SIZE);  
        System.out.println("包装类:java.lang.Double");  
        System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);  
        System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);  
        System.out.println();  
  
        // char  
        System.out.println("基本类型:char 二进制位数:" + Character.SIZE);  
        System.out.println("包装类:java.lang.Character");  
        // 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台  
        System.out.println("最小值:Character.MIN_VALUE="  
                + (int) Character.MIN_VALUE);  
        // 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台  
        System.out.println("最大值:Character.MAX_VALUE="  
                + (int) Character.MAX_VALUE);  
    }  
}

Exécuter l'instance»

Cliquez sur le bouton « Exécuter l'instance » pour voir l'exemple en ligne

Le résultat de la compilation du code ci-dessus est le suivant :

基本类型:byte 二进制位数:8
包装类:java.lang.Byte
最小值:Byte.MIN_VALUE=-128
最大值:Byte.MAX_VALUE=127

基本类型:short 二进制位数:16
包装类:java.lang.Short
最小值:Short.MIN_VALUE=-32768
最大值:Short.MAX_VALUE=32767

基本类型:int 二进制位数:32
包装类:java.lang.Integer
最小值:Integer.MIN_VALUE=-2147483648
最大值:Integer.MAX_VALUE=2147483647

基本类型:long 二进制位数:64
包装类:java.lang.Long
最小值:Long.MIN_VALUE=-9223372036854775808
最大值:Long.MAX_VALUE=9223372036854775807

基本类型:float 二进制位数:32
包装类:java.lang.Float
最小值:Float.MIN_VALUE=1.4E-45
最大值:Float.MAX_VALUE=3.4028235E38

基本类型:double 二进制位数:64
包装类:java.lang.Double
最小值:Double.MIN_VALUE=4.9E-324
最大值:Double.MAX_VALUE=1.7976931348623157E308

基本类型:char 二进制位数:16
包装类:java.lang.Character
最小值:Character.MIN_VALUE=0
最大值:Character.MAX_VALUE=65535

Les valeurs minimales et maximales de Float et Double sont sorties sous forme de notation scientifique, et le "E+number " à la fin représente le nombre avant E. Le nombre doit être multiplié à la puissance 10. Par exemple, 3,14E3 vaut 3,14 × 103 =3140 et 3,14E-3 vaut 3,14 x 10-3 =0,00314.

En fait, il existe un autre type de base void en JAVA, qui a également une classe d'empaquetage correspondante java.lang.Void, mais nous ne pouvons pas opérer directement dessus.


Type de référence

  • En Java, les variables de type référence sont très similaires aux pointeurs en C/C++. Un type référence pointe vers un objet et une variable pointant vers un objet est une variable de référence. Ces variables sont spécifiées comme un type spécifique lorsqu'elles sont déclarées, comme Employee, Pubby, etc. Une fois qu'une variable est déclarée, son type ne peut plus être modifié.

  • Les objets et les tableaux sont des types de données de référence.

  • La valeur par défaut de tous les types de référence est null.

  • Une variable de référence peut être utilisée pour faire référence à n’importe quel type compatible.

  • Exemple : Site site = nouveau Site("php").


Constantes Java

Les constantes sont des quantités qui ne seront pas modifiées lors de l'exécution du programme.

Utilisez le mot-clé final en Java pour modifier les constantes, et la méthode de déclaration est similaire aux variables :

final double PI = 3.1415927;

Bien que les noms de constantes puissent également être en minuscules, pour faciliter l'identification, les lettres majuscules sont généralement utilisé pour représenter des constantes.

Les littéraux peuvent être attribués à des variables de n'importe quel type intégré. Par exemple :

byte a = 68;
char a = 'A'

byte, int, long et short peuvent tous être représentés en décimal, hexadécimal et octal.

Lors de l'utilisation de constantes, le préfixe 0 représente l'octal et le préfixe 0x représente l'hexadécimal. Par exemple :

int decimal = 100;
int octal = 0144;
int hexa =  0x64;

Comme d'autres langages, les constantes chaîne de Java sont également des séquences de caractères contenues entre deux guillemets. Voici un exemple de chaîne littérale :

"Hello World"
"two\nlines"
"\"This is in quotes\""

Les constantes de chaîne et les constantes de caractère peuvent contenir n'importe quel caractère Unicode. Par exemple :

char a = '\u0001';
String a = "\u0001";

Le langage Java prend en charge certaines séquences de caractères d'échappement spéciales.

                    符号                    字符含义
                    n                    换行 (0x0a)
                    r                    回车 (0x0d)
                    f                    换页符(0x0c)
                    b                    退格 (0x08)
                    s                    空格 (0x20)
                    t                    制表符
                    "                    双引号
                    '                    单引号
                    \                    反斜杠
                    ddd                    八进制字符 (ddd)
                    uxxxx                    16进制Unicode字符 (xxxx)

Cette section explique les types de données de base de Java. La section suivante explore les différents types de variables et leurs utilisations.