[Introduction à Java] À propos des variables et des types (déclaration de variable, initialisation, type de données)

Objectif

Pour ceux qui viennent de commencer à apprendre la programmation, y compris le langage Java, et ceux qui l'ont déjà appris, pour examen J'écris pour apprendre la déclaration de variable, l'initialisation et les types de données.

[Introduction à Java] Cette fois, il s'agit ** de variables et de types **.

・ Variables et types ← Maintenant ici ・ Conversion de typePortée des variables

Déclaration de variable et initialisation

Qu'est-ce qu'une variable? ʻUn conteneur pour contenir les données utilisées dans le programme. ''

Pour le distinguer des autres variables

Dans le langage Java, les points suivants doivent être pris en compte lors de la déclaration de variables:

・ Quels types de valeurs sont stockées, telles que des nombres et des chaînes de caractères ・ Quel genre de nom dois-je utiliser? ・ Quelle est la première valeur à stocker?

Déclaration des variables

Nom de la variable de type de données; Doit être. (Le type de données sera décrit plus tard)

Main.java


class Main {
  public static void main(String args[]) {
    //Déclaration des variables
    int num;

    //J'obtiens une erreur lorsque j'essaye de sortir
    System.out.println(num); // The local variable num may not have been initialized
  }
}

Cette erreur est une déclaration de variable mais non initialisée, Se produit car vous avez utilisé une variable pour laquelle aucune valeur n'est définie.

Initialisation variable

Après avoir créé nom de la variable de type de données; Nom de la variable = valeur; Doit être.

Main.java


class Main {
  public static void main(String args[]) {
    //Déclaration des variables
    int num;

    //Initialisation variable(Remplacez par 10 num)
    num = 10;

    //production
    System.out.println(num); // 10
  }
}
  1. Déclarez le nom de la variable "num"
  2. Initialisez en remplaçant 10 par num. (Définir la valeur)
  3. Sortie

Déclaration de variable et initialisation en même temps

Nom de la variable de type de données = valeur; Il est également possible de.

Main.java


class Main {
  public static void main(String args[]) {
    //Déclaration de variable et initialisation
    int num = 10;

    //production
    System.out.println(num); // 10
  }
}

Règles de nom de variable

・ Seuls les caractères suivants peuvent être utilisés comme premier caractère. Alphabet (a ~ z, A ~ Z), signe dollar ($), trait de soulignement (_)

・ Les nombres peuvent être utilisés après le deuxième caractère.

・ Le cas est strictement distingué.

-Il n'y a pas de limite sur le nombre de caractères (longueur).

-Null, true, false ne peuvent pas être utilisés.

・ Les mots réservés ne peuvent pas être utilisés.

Les mots réservés sont des noms déjà utilisés dans le langage Java. Exemple: if, while, switch, etc.

Détails sur les mots réservés: Document officiel

À propos du type

En Java, vous deviez «spécifier le type de données» lors de la déclaration d'une variable.

Les types de données sont grossièrement classés comme suit.

Type de données de base (type primitif)Type de référence

Regardons chacun.

Type de données de base (type primitif)

type booléen

Moule Taille Gamme de valeurs
boolean 1 bit true/Soit faux

Main.java


class Main {
  public static void main(String args[]) {
    boolean a = true;
    boolean b = false;

    System.out.println(a); // true
    System.out.println(b); // false
  }
}

Type entier

Nous avons affaire à des données entières.

Moule Taille Gamme de valeurs
byte 8 bits -128〜127
short 16 bits -32768~32767
int 32 bits -2147483648~2147483647
long 64 bits -9223372036854775808~9223372036854775807

Main.java



System.out.println("Valeur minimale d'octet= " + Byte.MIN_VALUE); // Valeur minimale d'octet= -128
System.out.println("Valeur maximale d'octet= " + Byte.MAX_VALUE); // Valeur maximale d'octet= 127

System.out.println("Valeur minimale de short= " + Short.MIN_VALUE); // Valeur minimale de short= -32768
System.out.println("Valeur maximale de court= " + Short.MAX_VALUE); // Valeur maximale de court= 32767

System.out.println("Valeur minimale de int= " + Integer.MIN_VALUE); // Valeur minimale de int= -2147483648
System.out.println("Valeur maximale de int= " + Integer.MAX_VALUE); // Valeur maximale de int= 2147483647

System.out.println("Valeur minimale de long= " + Long.MIN_VALUE); // Valeur minimale de long= -9223372036854775808
System.out.println("Valeur maximale de long= " + Long.MAX_VALUE); // Valeur maximale de long= 9223372036854775807

La relation est byte <short <int <long.

À propos, si les valeurs minimale et maximale sont dépassées, les valeurs seront inversées. (Chiffres débordants)

Main.java



System.out.println("Valeur minimale de l'octet précédent= " + Byte.MIN_VALUE); //Valeur minimale d'octet= -128
byte minByte = Byte.MIN_VALUE;
minByte--;
System.out.println("Et la valeur minimale d'octet= " +  minByte); //Valeur minimale d'octet=127 ← inversé

System.out.println("Valeur maximale de l'octet précédent= " + Byte.MAX_VALUE); //Valeur maximale d'octet= 127
byte maxByte = Byte.MAX_VALUE;
maxByte++;
System.out.println("Et la valeur maximale d'octet= " + maxByte); //Valeur maximale d'octet= -128 ← inversé

Il est utilisé lors du calcul des entiers.

Main.java



int a = 1;
int b = 1;
int sum = a + b;

System.out.println(sum); // 3

Précautions lors de l'utilisation de caractères longs

Lors du stockage d'un entier dépassant le type int dans une variable, ajoutez "L" ou "l" à la fin.

Main.java


//J'obtiens une erreur
long longNumber = 214748364712342; // The literal 214748364712342 of type int is out of range

long longNumber = 214748364712342L; //Doit être suffixé avec "L" ou "l".

System.out.println(longNumber); // 214748364712342

Type à virgule flottante

Nous avons affaire à des données numériques comprenant des points décimaux.

Moule Taille Gamme de valeurs
float 32 bits ±1.40239846×10^-45~±3.40282347×10^38
double 64 bits ±4.94065645841246544×10^-324~±1.79769313486231570×10^308

Main.java



System.out.println("Valeur minimale du flotteur= " + Float.MIN_VALUE); // Valeur minimale du flotteur= 1.4E-45
System.out.println("Flotteur maximum= " + Float.MAX_VALUE); // Flotteur maximum= 3.4028235E38

System.out.println("Valeur minimale du double= " + Double.MIN_VALUE); // Valeur minimale du double= 4.9E-324
System.out.println("Valeur maximale du double= " + Double.MAX_VALUE); // Valeur maximale du double= 1.7976931348623157E308

Il est utilisé pour effectuer un petit nombre de calculs.

Main.java



//division de type int
int a = 10;
int b = 3;
int result1 = a / b;

System.out.println(result1); // 3

//Division de type flottant

//Les nombres à virgule flottante sont reconnus comme du type double par défaut
// float c = 10.0; // Type mismatch: cannot convert from double to float

float c = 10F; //Par conséquent, lors de l'affectation à une variable de type float, ajoutez F ou f à la fin.
float d = 3f; //Comme ci-dessus
float result2 = c / d;

System.out.println(result2); // 3.3333333

//Division de type double
double e = 10.0D; //Ajouter D ou d à la fin
double f = 3.0; //Cependant, comme mentionné ci-dessus, il est reconnu comme un type de dobule par défaut, il n'y a donc aucun problème si vous l'omettez.
double result3 = e / f;

System.out.println(result3); // 3.3333333333333335

type de caractère

Il est utilisé pour représenter un caractère.

Type de données Taille Gamme de valeurs
char 16 bits Code de caractère 16 bits

Il est utilisé pour gérer un caractère.

Précautions lors de l'utilisation du type char

Mettez entre guillemets simples. Ce doit être une lettre.

Main.java


//J'obtiens une erreur
char a = 'Ah'; // Invalid character constant
char a = "Ah";  // Type mismatch: cannot convert from String to char

char a = 'Ah';
System.out.println(a); //Ah

Type de référence

Tous les types à l'exception des types de données de base, y compris les classes, les tableaux, les interfaces, etc., sont des types de référence.

La variable ne contient pas la valeur elle-même, mais l'endroit où se trouve la valeur. Type de référence car il fait référence à l'endroit où il est stocké.

Test.java


public class Test {
  public int number = 0;
}

Main.java


class Main {
  public static void main(String args[]) {
    Test test = new Test();
    test.number = 10;
    System.out.println(test.number); // 10

    Test test2 = new Test();
    test2.number = 10;
    System.out.println(test2.number); // 10

    test = test2; //La valeur de test2 n'est pas affectée au test, mais à l'endroit où la valeur de test2 est placée.
    test.number = 99; //Par conséquent, si vous changez test à 99 ici, il sera changé en test2.

    System.out.println(test.number); // 99
    System.out.println(test2.number); // 99

  }
}

test = test2; La valeur de test2 n'est pas affectée au test, mais l'endroit où la «valeur de test2 est placée» est affecté.

test.number = 99; Par conséquent, si vous changez test à 99, il sera changé en test2.

Classe de wrapper

Une valeur du type de données de base peut être traitée comme un type de référence.

Bien qu'il s'agisse d'un type de référence, il est identique au type de données de base et sa valeur n'est pas modifiée. La valeur elle-même est attribuée, pas l'endroit où la valeur est placée.

Main.java


class Main {
  public static void main(String args[]) {
    Integer num = 10;
    Integer num2 = 10;
    System.out.println(num); // 10
    System.out.println(num2); // 10

    num = num2;
    num = 99;
    System.out.println(num); // 99
    System.out.println(num2); // 10

    String greet = "Bonjour";
    String greet2 = "Bonjour";
    System.out.println(greet); //Bonjour
    System.out.println(greet2); //Bonjour

    greet = greet2;
    greet = "Good Morning";
    System.out.println(greet); // Good Morning
    System.out.println(greet2); //Bonjour
  }
}

À la fin

Vous avez découvert la déclaration de variable, l'initialisation et les types de données. La prochaine fois, je me pencherai sur la conversion de type.

Recommended Posts

[Introduction à Java] À propos des variables et des types (déclaration de variable, initialisation, type de données)
Déclaration, initialisation et types de variables Java
Déclaration / initialisation de variable Java / type de données (distribution et promotion)
[Introduction à Java] À propos des déclarations et des types de variables
[Java] Types de variables et types
[Introduction à Java] À propos des opérations de tableau (tableau 1D, déclaration de tableau 2D, instanciation, initialisation et utilisation)
Programmation Java (variables et données)
A propos du type de données de base Java et de la mémoire du type de référence
[Introduction à Java] Portée de la variable (portée, variable locale, variable d'instance, variable statique)
Série Java Primer (variations et types)
Types de données de base et types de référence (Java)
Comment écrire une déclaration de variable Java
Types de données de base et types de référence Java
Bases du développement Java ~ Comment écrire des programmes (variables et types) ~
Java pour les débutants, les variables et les types
déclaration de variable java
[Java] Introduction à Java
Introduction à Java
[Introduction à Java] À propos de la conversion de type (distribution, promotion)
À propos des types de données Java (en particulier des types primitifs) et des littéraux
[Traitement × Java] Type de données et programmation orientée objet
[Java] Une erreur de types incompatibles s'est produite lors de l'affectation d'une chaîne de caractères à une variable de type char.
[Java] Types de commentaires et comment les rédiger
[Java] Type de données ①-Type de base
[Java] Se référer et définir des variables privées avec réflexion
Revenir au début et démarrer avec Java ① Types de données et modificateurs d'accès
Revue Java ① (étapes de développement, grammaire de base, variables, types de données)
[Java] Principaux types de données
Introduction à la commande java
Types de données de base Java
Introduction à Effective Java en pratiquant et en apprenant (modèle Builder)
Attribuer des expressions lambda Java8 aux variables et les réutiliser
Initialisation avec une chaîne vide vers une instance de type Java String
[Java] Différence entre l’affectation d’une variable de type de base et l’affectation d’une variable de type de référence
À propos des instructions de déclaration de variable Java
[Java] Introduction à l'expression lambda
Comment utiliser les variables Java
[Java] Introduction à l'API Stream
Java Learning 1 (apprendre divers types de données)
[Introduction aux jeux Janken (comme)] Java
Une évolution de l'énumération et des instructions switch! ?? Essayez d'obtenir des types de données algébriques et des correspondances de modèles en Java
Numéro d'examen Java SE Bronze: 1Z0-818 (Déclaration et utilisation des données) (octobre 2020)
[Java] Comment convertir du type String en type Path et obtenir le chemin
Introduction à Scala du point de vue Java (basique)
[Introduction à Java] À propos des expressions lambda
[Java] Types de base et notes d'instructions
Introduction à la programmation fonctionnelle (Java, Javascript)
[Java] Type de données / produit matriciel (produit matriciel AOJ ⑧)
[Traitement × Java] Comment utiliser les variables
Les variables de tableau Java sont des types de référence
Introduction initiale à Mac (ingénieur Java)
Attribuer les résultats de l'évaluation aux variables Java
Comment nommer des variables en Java
A propos des types primitifs et des types de référence Java
[Java] Types d'exception et traitement de base
Comment utiliser le type enum Java