Dans ce tutoriel, nous allons apprendre à travailler avec des chaînes en Java. Les chaînes, si largement utilisées en programmation, sont une séquence de caractères. Dans le langage de programmation Java, les chaînes sont un objet. La plateforme Java fournit une classe
String
pour créer et manipuler des chaînes.
Création de chaînes
La manière la plus simple de créer une chaîne ressemble à ceci :String greeting = "Hello world!";
Dans ce cas, « Hello World ! » est une chaîne littérale (c'est-à-dire une constante) constituée d'une séquence de caractères entourée de guillemets. Chaque fois que le compilateur rencontre une chaîne littérale, il crée un objet de type String
avec une valeur, dans notre cas, "Hello World!". Comme tout autre objet, une chaîne peut être créée à l'aide du mot-clé new
. La classe String
dispose de trois constructeurs qui vous permettent de créer un objet en utilisant différentes sources, comme un tableau de caractères .
char[] helloArray = {'h', 'e', 'l', 'l', 'o', '.'};
String helloString = new String(helloArray);
System.out.println(helloString);
La dernière ligne de l'exemple affichera bonjour à l'écran . La classe String
est immuable, donc une fois que nous créons un objet, nous ne pouvons pas le modifier. Certaines méthodes que nous examinerons ci-dessous peuvent résoudre ce problème. Parce que String
immuables, ces méthodes créent et renvoient une nouvelle chaîne contenant le résultat de l'opération.
Longueur de la chaîne Java
Les méthodes permettant d'obtenir des informations sur une chaîne sont appelées méthodes d'accès. Une de ces méthodeslength()
. Il renvoie le nombre de caractères dans la chaîne. Dans l’exemple suivant, len
ce sera 17 :
String palindrome = "Dont saw I saw Tod";
int len = palindrome.length();
La variable palindrome
contient un palindrome, c'est-à-dire un mot ou une phrase qui se lit de la même manière dans les deux sens. Écrivons un petit programme qui inversera un palindrome. Nous utiliserons la méthode charAt(i)
, qui renvoie le i -ième caractère de la chaîne, commençant par 0
.
public class StringDemo {
public static void main(String[] args) {
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
char[] tempCharArray = new char[len];
char[] charArray = new char[len];
//создадим из строки
// массив символов
for (int i = 0; i < len; i++) {
tempCharArray[i] =
palindrome.charAt(i);
}
// перевернем массив символов
for (int j = 0; j < len; j++) {
charArray[j] =
tempCharArray[len - 1 - j];
}
String reversePalindrome =
new String(charArray);
System.out.println(reversePalindrome);
}
}
Le programme imprimera
doT saw I was toD
Afin d'inverser une chaîne, nous avons d'abord créé un tableau de caractères à partir de la chaîne (la première boucle), puis créé un nouveau tableau dans lequel nous avons écrit le premier tableau inversé, puis créé une nouvelle chaîne. La classe String
contient une méthode getChars()
qui renvoie un tableau de caractères, donc la première boucle peut être remplacée par la ligne :
palindrome.getChars(0, len, tempCharArray, 0);
Concaténation de chaînes
La classeString
implémente une méthode pour concaténer deux chaînes :
string1.concat(string2);
Ce code renverra une nouvelle chaîne contenant string1
et ajoutée à celle-ci string2
. Vous pouvez également utiliser cette méthode avec des chaînes littérales :
"My name is ".concat("Rumplestiltskin");
Le plus souvent, les chaînes sont jointes à l'aide de l' +
opérateur « », exemple :
"Hello," + " world" + "!"
Le résultat sera la chaîne « Bonjour tout le monde ! » " L' +
opérateur " " est largement utilisé pour afficher des informations, par exemple :
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
Le code affichera " Dot saw I was Tod ". Une telle concaténation peut être utilisée conjointement avec tout autre objet. Pour les objets qui ne sont pas des chaînes, la méthode sera appelée toString()
, qui les convertira en chaînes. Définir le format de sortie de la chaîne Nous avons déjà examiné les méthodes printf()
lorsque format()
nous avons formaté la sortie des nombres. La classe String
a une méthode similaire qui renvoie une chaîne. En utilisant une méthode statique, format()
il est possible de créer un modèle de stock qui peut être réutilisé, par exemple à la place :
System.out.printf ("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, "
"and the string is %s",
floatVar, intVar, stringVar);
vous pouvez utiliser ce code :
String fs;
fs = String.format("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, " +
" and the string is %s",
froatVar, intVar, stringVar);
System.out.println(fs);
C'est tout! :) Lien vers la source : chaînes en Java
GO TO FULL VERSION