1. Structure de la String
classe
Aujourd'hui, nous allons parler de la String
classe. Après ints, la classe String est la classe la plus populaire en Java. Il est utilisé absolument partout. Il a un tas de méthodes utiles que vous feriez mieux de connaître.
La String
classe est la seule classe autre que les types primitifs dont les littéraux peuvent être utilisés dans une switch
instruction ; le compilateur gère l'ajout de chaînes et les objets String d'une manière spéciale ; String
les objets sont stockés dans la mémoire d'une manière particulière. Fondamentalement, la String
classe est une classe très spéciale.
De plus, la String
classe a un tas de classes d'assistance dont le but est de simplifier davantage le travail avec les chaînes en Java. Lorsque vous apprendrez tout cela, beaucoup de choses deviendront vraiment beaucoup plus faciles à faire pour vous. Eh bien, nous allons commencer par le cœur même de cet écosystème - l'organisation de la String
classe.
Tableau de caractères
La structure de la String
classe est en fait très simple : à l'intérieur se trouve un tableau de caractères (char array) qui stocke tous les caractères de la chaîne. Par exemple, voici comment le mot "Bonjour" est stocké :
En fait, ce n'est pas tout à fait exact. Étant donné que la String
classe est très importante, elle utilise de nombreuses optimisations et les données sont stockées en interne non pas sous la forme d'un tableau de caractères, mais simplement sous la forme d'un tableau d'octets.
2. Méthodes de la String
classe
La String
classe a beaucoup de méthodes : elle a 18 constructeurs à elle seule ! Donc ci-dessous, nous ne mentionnons que les plus basiques d'entre eux :
Méthodes | Description |
---|---|
|
Renvoie le nombre de caractères dans la chaîne |
|
Vérifie si la chaîne est une chaîne vide |
|
Vérifie que la chaîne ne contient que des caractères blancs : espace, tabulation, nouvelle ligne, etc. |
|
Renvoie le caractère à la position d'index dans la chaîne. |
|
Renvoie un tableau des caractères (une copie) qui composent la chaîne |
|
Convertit une chaîne en un ensemble d'octets et renvoie le tableau d'octets. |
|
Divise une chaîne en plusieurs sous-chaînes. |
|
Joint plusieurs sous-chaînes ensemble |
|
Met une chaîne dans le string pool . |
Vous pouvez en savoir plus sur les constructeurs dans l'article Constructeurs Java .
Écrivons un programme qui convertit un chemin de fichier du style Unix au style Windows. Unix utilise le /
caractère pour séparer les dossiers, tandis que Windows utilise le \
caractère.
Solution 1 : utiliser un tableau char
Code | Remarques |
---|---|
|
Créer un objet Scanner Lire une ligne depuis la console Convertir une chaîne en un tableau de caractères Boucler sur les caractères Si le caractère est / , remplacez-le par \ . N'oubliez pas de vous évader. Créez une nouvelle chaîne basée sur le tableau de caractères. Affichez la chaîne. |
Solution 2 : — en utilisant les méthodes split()
etjoin()
Code | Remarques |
---|---|
|
Créer un objet Scanner Lire une ligne depuis la console Convertir une chaîne en un tableau de chaînes . Le / caractère est utilisé comme séparateur (les deux barres obliques supplémentaires sont le résultat d'un double échappement). Concatène toutes les chaînes du tableau de chaînes . Le \ est utilisé comme séparateur (on le voit échappé). Affichez la chaîne. |
Solution 3 : — en utilisant la replace(char oldChar, char newChar)
méthode
Code | Remarques |
---|---|
|
Créer un objet Scanner Lire une ligne depuis la console Remplacer simplement un caractère par un autre (le second est échappé) Afficher la chaîne. |
GO TO FULL VERSION