Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Maîtriser les chaînes de caractères en Java : Création, méthodes et bonnes pratiques

Chaînes de caractères Java

Dans ce tutoriel, nous allons apprendre les chaînes de caractères en Java, comment les créer et les diverses méthodes de la classe String avec des exemples.

En Java, une chaîne est une séquence de caractères. Par exemple, "hello" est une chaîne contenant une séquence de caractères 'h', 'e', 'l', 'l' et 'o'.

Nous utilisons des guillemets doubles pour représenter une chaîne en Java. Par exemple,

// créer une chaîne
String type = "Java programming";

Ici, nous avons créé une variable de chaîne nommée type. La variable est initialisée avec la chaîne Java Programming.


Exemple : Créer une chaîne en Java

class Main {
    public static void main(String[] args) {
        // créer des chaînes
        String first = "Java";
        String second = "Python";
        String third = "JavaScript";
        // afficher les chaînes
        System.out.println(first); // affiche Java
        System.out.println(second); // affiche Python
        System.out.println(third); // affiche JavaScript
    }
}

Dans l'exemple ci-dessus, nous avons créé trois chaînes nommées first, second et third. Ici, nous créons directement des chaînes comme des types primitifs.

Cependant, il existe une autre façon de créer des chaînes Java (en utilisant le mot-clé new). Nous en apprendrons plus tard dans ce tutoriel.

Note : Les chaînes en Java ne sont pas des types primitifs (comme int, char, etc). Au lieu de cela, toutes les chaînes sont des objets d'une classe prédéfinie nommée String.

Et toutes les variables de chaîne sont des instances de la classe String.


Opérations sur les chaînes Java

La classe String Java fournit diverses méthodes pour effectuer différentes opérations sur les chaînes. Nous examinerons certaines des opérations de chaîne couramment utilisées.

1. Obtenir la longueur d'une chaîne

Pour trouver la longueur d'une chaîne, nous utilisons la méthode length() de la classe String. Par exemple,

class Main {
    public static void main(String[] args) {
        // créer une chaîne
        String greet = "Hello! World";
        System.out.println("String: " + greet);
        // obtenir la longueur de greet
        int length = greet.length();
        System.out.println("Length: " + length);
    }
}

Sortie

String: Hello! World
Length: 12

Dans l'exemple ci-dessus, la méthode length() calcule le nombre total de caractères dans la chaîne et la retourne. Pour en savoir plus, visitez Java String length().


2. Joindre deux chaînes Java

Nous pouvons joindre deux chaînes en Java en utilisant la méthode concat(). Par exemple,

class Main {
    public static void main(String[] args) {
        // créer la première chaîne
        String first = "Java ";
        System.out.println("First String: " + first);
        // créer la seconde chaîne
        String second = "Programming";
        System.out.println("Second String: " + second);
        // joindre deux chaînes
        String joinedString = first.concat(second);
        System.out.println("Joined String: " + joinedString);
    }
}

Sortie

First String: Java
Second String: Programming
Joined String: Java Programming

Dans l'exemple ci-dessus, nous avons créé deux chaînes nommées first et second. Remarquez l'instruction,

String joinedString = first.concat(second);

Ici, la méthode concat() joint la chaîne second à la chaîne first et l'assigne à la variable joinedString.

Nous pouvons aussi joindre deux chaînes en utilisant l'opérateur + en Java. Pour en savoir plus, visitez Java String concat().


3. Comparer deux chaînes

En Java, nous pouvons faire des comparaisons entre deux chaînes en utilisant la méthode equals(). Par exemple,

class Main {
    public static void main(String[] args) {
        // créer 3 chaînes
        String first = "java programming";
        String second = "java programming";
        String third = "python programming";
        // comparer first et second
        boolean result1 = first.equals(second);
        System.out.println("Strings first and second are equal: " + result1);
        // comparer first et third
        boolean result2 = first.equals(third);
        System.out.println("Strings first and third are equal: " + result2);
    }
}

Sortie

Strings first and second are equal: true
Strings first and third are equal: false

Dans l'exemple ci-dessus, nous avons créé 3 chaînes nommées first, second et third. Ici, nous utilisons la méthode equals() pour vérifier si une chaîne est égale à une autre.

La méthode equals() vérifie le contenu des chaînes lors de la comparaison. Pour en savoir plus, visitez Java String equals().

Note : Nous pouvons aussi comparer deux chaînes en utilisant l'opérateur == en Java. Cependant, cette approche est différente de la méthode equals(). Pour en savoir plus, visitez Java String == vs equals().


Caractère d'échappement dans les chaînes Java

Le caractère d'échappement est utilisé pour échapper certains caractères présents à l'intérieur d'une chaîne.

Supposons que nous ayons besoin d'inclure des guillemets doubles à l'intérieur d'une chaîne.

// inclure guillemet double
String example = "This is the "String" class";

Puisque les chaînes sont représentées par des guillemets doubles, le compilateur traitera "This is the " comme la chaîne. Donc, le code ci-dessus causera une erreur.

Pour résoudre ce problème, nous utilisons le caractère d'échappement \ en Java. Par exemple,

// utiliser le caractère d'échappement
String example = "This is the \"String\" class.";

Maintenant, les caractères d'échappement disent au compilateur d'échapper les guillemets doubles et de lire tout le texte.


Les chaînes Java sont immuables

En Java, les chaînes sont immuables. Cela signifie qu'une fois que nous créons une chaîne, nous ne pouvons pas la changer.

Pour le comprendre plus profondément, considérons un exemple :

// créer une chaîne
String example = "Hello! ";

Ici, nous avons créé une variable de chaîne nommée example. La variable contient la chaîne "Hello! ".

Supposons maintenant que nous voulons changer la chaîne.

// ajouter une autre chaîne "World"
// à la chaîne précédente
example = example.concat(" World");

Ici, nous utilisons la méthode concat() pour ajouter une autre chaîne World à la chaîne précédente.

Il semble que nous puissions changer la valeur de la chaîne précédente. Cependant, ce n'est pas true.

Voyons ce qui s'est passé ici :

  1. La JVM prend la première chaîne "Hello! "
  2. crée une nouvelle chaîne en ajoutant "World" à la première chaîne
  3. assigne la nouvelle chaîne "Hello! World" à la variable example
  4. la première chaîne "Hello! " reste inchangée

Création de chaînes en utilisant le mot-clé new

Jusqu'à présent, nous avons créé des chaînes comme des types primitifs en Java.

Puisque les chaînes en Java sont des objets, nous pouvons créer des chaînes en utilisant le mot-clé new également. Par exemple,

// créer une chaîne en utilisant le mot-clé new
String name = new String("Java String");

Dans l'exemple ci-dessus, nous avons créé une chaîne name en utilisant le mot-clé new.

Ici, quand nous créons un objet chaîne, le constructeur String() est invoqué. Pour en savoir plus sur les constructeurs, visitez Constructeur Java.

Note : La classe String fournit divers autres constructeurs pour créer des chaînes. Pour en savoir plus, visitez Java String (documentation officielle Java).


Exemple : Créer des chaînes Java en utilisant le mot-clé new

class Main {
    public static void main(String[] args) {
        // créer une chaîne en utilisant new
        String name = new String("Java String");
        System.out.println(name); // affiche Java String
    }
}

Créer une chaîne avec littéraux vs mot-clé new

Maintenant que nous savons comment les chaînes sont créées en utilisant les littéraux de chaîne et le mot-clé new, voyons quelle est la différence majeure entre eux.

En Java, la JVM maintient un pool de chaînes pour stocker toutes ses chaînes en mémoire. Le pool de chaînes aide à réutiliser les chaînes.

1. Lors de la création de chaînes en utilisant des littéraux de chaîne,

String example = "Java";

Ici, nous fournissons directement la valeur de la chaîne (Java). Donc, le compilateur vérifie d'abord le pool de chaînes pour voir si la chaîne existe déjà.

2. Lors de la création de chaînes en utilisant le mot-clé new,

String example = new String("Java");

Ici, la valeur de la chaîne n'est pas fournie directement. Donc, une nouvelle chaîne "Java" est créée même si "Java" est déjà présente dans le pool de mémoire.


Méthodes de la classe String Java

En plus de celles mentionnées ci-dessus, il existe diverses méthodes de chaîne en Java. En voici quelques-unes :

MéthodesDescription
contains()vérifie si la chaîne contient une sous-chaîne
substring()retourne la sous-chaîne de la chaîne
join()joint les chaînes données en utilisant le délimiteur
replace()remplace le caractère ancien spécifié par le nouveau caractère spécifié
replaceAll()remplace toutes les sous-chaînes correspondant au motif regex
replaceFirst()remplace la première sous-chaîne correspondante
charAt()retourne le caractère présent à l'emplacement spécifié
getBytes()convertit la chaîne en tableau d'octets
indexOf()retourne la position du caractère spécifié dans la chaîne
compareTo()compare deux chaînes dans l'ordre du dictionnaire
compareToIgnoreCase()compare deux chaînes en ignorant les différences de casse
trim()supprime les espaces blancs en début et fin
format()retourne une chaîne formatée
split()divise la chaîne en tableau de chaînes
toLowerCase()convertit la chaîne en minuscules
toUpperCase()convertit la chaîne en majuscules
valueOf()retourne la représentation en chaîne de l'argument spécifié
toCharArray()convertit la chaîne en tableau char
matches()vérifie si la chaîne correspond au regex donné
startsWith()vérifie si la chaîne commence par la chaîne donnée
endsWith()vérifie si la chaîne se termine par la chaîne donnée
isEmpty()vérifie si une chaîne est vide ou non
intern()retourne la représentation canonique de la chaîne
contentEquals()vérifie si la chaîne est égale à charSequence
hashCode()retourne un code de hachage pour la chaîne
subSequence()retourne une sous-séquence de la chaîne

Java

  1. Maîtriser les chaînes C# : Fondamentaux, opérations et techniques avancées
  2. Maîtriser les opérateurs Java : Types, syntaxe et exemples pratiques
  3. Maîtriser les interfaces Java : concepts, implémentation et bonnes pratiques
  4. Maîtriser les représentations en chaînes dans les enums Java
  5. Maîtriser le try-with-resources Java : gestion automatique des ressources expliquée
  6. Annotations Java expliquées : types, placement et exemples pratiques
  7. Comprendre Java String.charAt() : Syntaxe, type de retour, exceptions et exemple pratique
  8. Maîtriser Java String.endsWith() : Comment vérifier les suffixes de chaînes avec exemples
  9. Maîtriser le remplacement de chaînes Java : replace(), replaceAll() et replaceFirst() expliqués