Java - Classe de chaînes

Les chaînes, largement utilisées dans la programmation Java, sont une séquence de caractères. Dans le langage de programmation Java, les chaînes sont traitées comme des objets.

La plate-forme Java fournit la classe String pour créer et manipuler des chaînes.

Création de chaînes

La façon la plus directe de créer une chaîne est d'écrire -

String greeting = "Hello world!";

Chaque fois qu'il rencontre un littéral de chaîne dans votre code, le compilateur crée un objet String avec sa valeur dans ce cas, "Hello world!".

Comme pour tout autre objet, vous pouvez créer des objets String à l'aide du mot clé new et d'un constructeur. La classe String dispose de 11 constructeurs qui vous permettent de fournir la valeur initiale de la chaîne à l'aide de différentes sources, telles qu'un tableau de caractères.

Exemple

public class StringDemo {

   public static void main(String args[]) {
      char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}

Cela produira le résultat suivant -

Production

hello.

Note- La classe String est immuable, de sorte qu'une fois créée, un objet String ne peut pas être modifié. S'il est nécessaire d'apporter de nombreuses modifications aux chaînes de caractères, vous devez utiliser les classes de tampon de chaîne et de générateur de chaîne .

Longueur de chaine

Les méthodes utilisées pour obtenir des informations sur un objet sont appelées accessor methods. Une méthode d'accesseur que vous pouvez utiliser avec des chaînes est la méthode length (), qui renvoie le nombre de caractères contenus dans l'objet chaîne.

Le programme suivant est un exemple de length(), méthode Classe de chaîne.

Exemple

public class StringDemo {

   public static void main(String args[]) {
      String palindrome = "Dot saw I was Tod";
      int len = palindrome.length();
      System.out.println( "String Length is : " + len );
   }
}

Cela produira le résultat suivant -

Production

String Length is : 17

Concaténation de chaînes

La classe String comprend une méthode pour concaténer deux chaînes -

string1.concat(string2);

Cela renvoie une nouvelle chaîne qui est string1 avec string2 ajouté à la fin. Vous pouvez également utiliser la méthode concat () avec des chaînes littérales, comme dans -

"My name is ".concat("Zara");

Les chaînes sont plus communément concaténées avec l'opérateur +, comme dans -

"Hello," + " world" + "!"

ce qui se traduit par -

"Hello, world!"

Regardons l'exemple suivant -

Exemple

public class StringDemo {

   public static void main(String args[]) {
      String string1 = "saw I was ";
      System.out.println("Dot " + string1 + "Tod");
   }
}

Cela produira le résultat suivant -

Production

Dot saw I was Tod

Création de chaînes de format

Vous disposez des méthodes printf () et format () pour imprimer la sortie avec des nombres formatés. La classe String a une méthode de classe équivalente, format (), qui renvoie un objet String plutôt qu'un objet PrintStream.

L'utilisation de la méthode static format () de String vous permet de créer une chaîne formatée que vous pouvez réutiliser, par opposition à une instruction d'impression unique. Par exemple, au lieu de -

Exemple

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 écrire -

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", floatVar, intVar, stringVar);
System.out.println(fs);

Méthodes de chaîne

Voici la liste des méthodes prises en charge par la classe String -

N ° Sr. Méthode et description
1 char charAt (index int)

Renvoie le caractère à l'index spécifié.

2 int compareTo (objet o)

Compare cette chaîne à un autre objet.

3 int compareTo (chaîne anotherString)

Compare deux chaînes lexicographiquement.

4 int compareToIgnoreCase (chaîne de caractères)

Compare deux chaînes lexicographiquement, en ignorant les différences de casse.

5 String concat (chaîne str)

Concatène la chaîne spécifiée à la fin de cette chaîne.

6 boolean contentEquals (StringBuffer sb)

Renvoie true si et seulement si cette chaîne représente la même séquence de caractères que le StringBuffer spécifié.

sept static String copyValueOf (char [] data)

Renvoie une chaîne qui représente la séquence de caractères dans le tableau spécifié.

8 static String copyValueOf (char [] data, int offset, int count)

Renvoie une chaîne qui représente la séquence de caractères dans le tableau spécifié.

9 boolean endsWith (suffixe de chaîne)

Teste si cette chaîne se termine par le suffixe spécifié.

dix booléen est égal à (Object anObject)

Compare cette chaîne à l'objet spécifié.

11 boolean equalsIgnoreCase (String anotherString)

Compare cette chaîne à une autre chaîne, en ignorant les considérations de casse.

12 byte [] getBytes ()

Encode cette chaîne en une séquence d'octets à l'aide du jeu de caractères par défaut de la plateforme, en stockant le résultat dans un nouveau tableau d'octets.

13 byte [] getBytes (String charsetName)

Encode cette chaîne en une séquence d'octets à l'aide du jeu de caractères nommé, en stockant le résultat dans un nouveau tableau d'octets.

14 void getChars (int srcBegin, int srcEnd, char [] dst, int dstBegin)

Copie les caractères de cette chaîne dans le tableau de caractères de destination.

15 int hashCode ()

Renvoie un code de hachage pour cette chaîne.

16 int indexOf (int ch)

Renvoie l'index dans cette chaîne de la première occurrence du caractère spécifié.

17 int indexOf (int ch, int fromIndex)

Renvoie l'index dans cette chaîne de la première occurrence du caractère spécifié, en commençant la recherche à l'index spécifié.

18 int indexOf (chaîne str)

Renvoie l'index dans cette chaîne de la première occurrence de la sous-chaîne spécifiée.

19 int indexOf (chaîne str, int fromIndex)

Renvoie l'index dans cette chaîne de la première occurrence de la sous-chaîne spécifiée, en commençant à l'index spécifié.

20 Stagiaire chaîne ()

Renvoie une représentation canonique de l'objet chaîne.

21 int lastIndexOf (int ch)

Renvoie l'index dans cette chaîne de la dernière occurrence du caractère spécifié.

22 int lastIndexOf (int ch, int fromIndex)

Renvoie l'index dans cette chaîne de la dernière occurrence du caractère spécifié, en effectuant une recherche en arrière en commençant à l'index spécifié.

23 int lastIndexOf (chaîne str)

Renvoie l'index dans cette chaîne de l'occurrence la plus à droite de la sous-chaîne spécifiée.

24 int lastIndexOf (chaîne str, int fromIndex)

Renvoie l'index dans cette chaîne de la dernière occurrence de la sous-chaîne spécifiée, en recherchant en arrière en commençant à l'index spécifié.

25 longueur int ()

Renvoie la longueur de cette chaîne.

26 correspondances booléennes (chaîne regex)

Indique si cette chaîne correspond ou non à l'expression régulière donnée.

27 boolean regionMatches (boolean ignoreCase, int toffset, String other, int ooffset, int len)

Teste si deux régions de chaîne sont égales.

28 boolean regionMatches (int toffset, String other, int ooffset, int len)

Teste si deux régions de chaîne sont égales.

29 Remplacer la chaîne (char oldChar, char newChar)

Renvoie une nouvelle chaîne résultant du remplacement de toutes les occurrences de oldChar dans cette chaîne par newChar.

30 String replaceAll (String regex, remplacement de chaîne

Remplace chaque sous-chaîne de cette chaîne qui correspond à l'expression régulière donnée par le remplacement donné.

31 String replaceFirst (String regex, remplacement de chaîne)

Remplace la première sous-chaîne de cette chaîne qui correspond à l'expression régulière donnée par le remplacement donné.

32 String [] split (String regex)

Divise cette chaîne autour des correspondances de l'expression régulière donnée.

33 String [] split (String regex, limite int)

Divise cette chaîne autour des correspondances de l'expression régulière donnée.

34 boolean startsWith (préfixe de chaîne)

Teste si cette chaîne commence par le préfixe spécifié.

35 boolean startsWith (préfixe de chaîne, int toffset)

Teste si cette chaîne commence par le préfixe spécifié commençant un index spécifié.

36 CharSequence subSequence (int beginIndex, int endIndex)

Renvoie une nouvelle séquence de caractères qui est une sous-séquence de cette séquence.

37 Sous-chaîne de chaîne (int beginIndex)

Renvoie une nouvelle chaîne qui est une sous-chaîne de cette chaîne.

38 Sous-chaîne de chaîne (int beginIndex, int endIndex)

Renvoie une nouvelle chaîne qui est une sous-chaîne de cette chaîne.

39 char [] toCharArray ()

Convertit cette chaîne en un nouveau tableau de caractères.

40 Chaîne toLowerCase ()

Convertit tous les caractères de cette chaîne en minuscules en utilisant les règles des paramètres régionaux par défaut.

41 String toLowerCase (paramètres régionaux)

Convertit tous les caractères de cette chaîne en minuscules en utilisant les règles du paramètre régional donné.

42 Chaîne toString ()

Cet objet (qui est déjà une chaîne!) Est lui-même retourné.

43 Chaîne toUpperCase ()

Convertit tous les caractères de cette chaîne en majuscules en utilisant les règles des paramètres régionaux par défaut.

44 String toUpperCase (paramètres régionaux)

Convertit tous les caractères de cette chaîne en majuscules en utilisant les règles du paramètre régional donné.

45 Coupe de chaîne ()

Renvoie une copie de la chaîne, en omettant les espaces de début et de fin.

46 static String valueOf (type de données primitif x)

Renvoie la représentation sous forme de chaîne de l'argument de type de données transmis.