Comment inverser une chaîne en java

Comment inverser une chaîne en java
Pour inverser une chaîne, signifie avoir la chaîne dans l'ordre inverse. Par exemple, la chaîne «ABCDE» peut être inversée à «EDCBA», et «Pool» peut être inversée à «Loop». Comme autre exemple, la chaîne «ABC Def Ghi» peut être inversée à «IHG Fed CBA».

Le littéral de chaîne d'un objet pour la classe de chaîne est constant. Cela signifie que aucun de ses personnages ne peut être modifié ou déplacé. Heureusement, Java a deux autres classes de type String, appelées StringBuffer et StringBuilder. Chacune de ces deux classes a la méthode inversée () pour inverser une chaîne.

Donc, pour inverser une chaîne, convertissez l'objet String en un objet StringBuffer ou StringBuilder. Utilisez la méthode inversée () de ces classes pour inverser la chaîne. Puis convertissez le résultat en un objet de chaîne.

Pour convertir un objet String en un objet StringBuffer, utilisez l'objet String dans le constructeur StringBuffer. Pour convertir un objet StringBuffer en un objet String, utilisez l'objet StringBuffer dans le constructeur de chaîne.

Pour convertir un objet String en un objet StringBuilder, utilisez l'objet String dans le constructeur StringBuilder. Pour convertir un objet StringBuilder en un objet String, utilisez l'objet StringBuilder dans le constructeur de chaîne.

Constructions String et StringBuffer

String à StringBuffer

La syntaxe pour construire un objet StringBuffer à partir d'un objet String est:

StringBuffer sb = new StringBuffer (String Str);

où SB est l'objet StringBuffer. Le programme suivant illustre ceci:

classe publique TheClass
public static void main (String [] args)
String str = "niveau supérieur";
StringBuffer sb = new StringBuffer (str);
Système.dehors.println (sb);

La sortie est:

Niveau supérieur

Notez que le programme n'avait pas à importer la classe StringBuffer.

StringBuffer à String

La syntaxe pour construire un objet String à partir d'un objet StringBuffer est:

String str = new String (StringBuffer SB);

Où Str est l'objet String. Le programme suivant illustre ceci:

classe publique TheClass
public static void main (String [] args)
StringBuffer sb = new StringBuffer ("Niveau supérieur");
String str = new String (sb);
Système.dehors.println (str);

La sortie est:

Niveau supérieur

Constructions de cordes et de scénario

Chaîne à StringBuilder

La syntaxe pour construire un objet StringBuilder à partir d'un objet String est:

StringBuilder sbl = new StringBuilder (String Str);

où sbl est l'objet StringBuilder. Le programme suivant illustre ceci:

classe publique TheClass
public static void main (String [] args)
String str = "niveau supérieur";
StringBuilder sbl = new StringBuilder (str);
Système.dehors.println (sbl);

La sortie est:

Niveau supérieur

Notez que le programme n'avait pas à importer la classe StringBuilder.

StringBuilder en chaîne

La syntaxe pour construire un objet String à partir d'un objet StringBuilder est:

String str = new String (StringBuilder sbl);

Où Str est l'objet String. Le programme suivant illustre ceci:

classe publique TheClass
public static void main (String [] args)
StringBuilder sbl = new StringBuilder ("niveau supérieur");
String str = new String (sbl);
Système.dehors.println (str);

La sortie est:

Niveau supérieur

Inversion avec StringBuffer

La procédure pour inverser une chaîne avec StringBuffer est la suivante:

StringBuffer sb = new StringBuffer (String Str)
StringBuffersbr = SB.inverse()
String strr = new String (stringBuffersBr);

Le programme suivant illustre ceci:

classe publique TheClass
public static void main (String [] args)
String str = "niveau supérieur";
StringBuffer sb = new StringBuffer (str);
StringBuffersbr = SB.inverse();
String strr = new String (sbr);
Système.dehors.println (strr);

La sortie est:

Niveau Rehgih

Inversion avec StringBuilder

La procédure pour inverser une chaîne avec StringBuilder est la suivante:

StringBuilder sbl = new StringBuilder (String Str)
StringBuilder sblr = sbl.inverse()
String strr = new String (StringBuilder sblr);

Le programme suivant illustre ceci:

classe publique TheClass
public static void main (String [] args)
String str = "niveau supérieur";
StringBuilder sbl = new StringBuilder (str);
StringBuilder sblr = sbl.inverse();
String strr = new String (sblr);
Système.dehors.println (strr);

La sortie est:

Niveau Rehgih

StringBuffer et StringBuilder

StringBuilder est une forme simplifiée de StringBuffer. Si StringBuffer est utilisé avec plusieurs threads, il y aura une bonne synchronisation. StringBuilder n'offre pas une bonne synchronisation avec plusieurs threads. StringBuilder doit être utilisé uniquement avec des programmes à fil unique.

Les principales méthodes pour StringBuilder et StringBuffer sont les méthodes APPEND () et INSERT (). Avec ces méthodes, leurs littéraux de cordes peuvent être augmentés en longueur et également modifiés. Ces objets ne peuvent pas avoir la valeur nulle comme l'un de leurs personnages.

Inversion avec chaîne et tableau

La valeur de chaîne (caractères qui forment la chaîne littérale) pour l'objet String est constant. Les personnages peuvent, bien sûr, être lus. La séquence de caractères est en lecture seule. Si les caractères sont lus en arrière dans un tableau et le tableau converti en un objet de chaîne de la classe de chaîne, ce serait l'inversion de la chaîne.

En utilisant cette procédure, la taille de la chaîne doit être déterminée avec l'énoncé suivant:

len = str.longueur();

où la longueur () est la méthode de classe de chaîne pour renvoyer la longueur de la chaîne. Pour faire un tableau de bouchons à partir d'une chaîne, utilisez la construction de chaîne suivante:

String strr = new String (char [])

Le programme suivant utilise cette procédure pour inverser une chaîne en Java:

classe publique TheClass
public static void main (String [] args)
String str = "niveau supérieur";
int len ​​= str.longueur();
char [] arr = new char [len];
pour (int i = len; i> 0; i--)
arr [Len-i] = str.Charat (I-1);
String strr = new String (arr);
Système.dehors.println (strr);

La sortie est:

Niveau Rehgih

pareil qu'avant. Notez l'utilisation de la méthode charat () pour obtenir le caractère à un index de l'objet String.

Conclusion

Le littéral de chaîne d'un objet pour la classe de chaîne est constant. Cela signifie que aucun de ses personnages ne peut être modifié ou déplacé. Heureusement, Java a deux autres classes de type String, appelées StringBuffer et StringBuilder. Chacune de ces deux classes a la méthode inversée () pour inverser une chaîne.

Donc, pour inverser une chaîne, convertissez l'objet String en un objet StringBuffer ou StringBuilder. Utilisez la méthode inversée () de ces classes pour inverser la chaîne. Puis convertissez le résultat en un objet de chaîne.

Pour convertir un objet String en un objet StringBuffer, utilisez l'objet String dans le constructeur StringBuffer. Pour convertir un objet StringBuffer en un objet String, utilisez l'objet StringBuffer dans le constructeur de chaîne.

Pour convertir un objet String en un objet StringBuilder, utilisez l'objet String dans le constructeur StringBuilder. Pour convertir un objet StringBuilder en un objet String, utilisez l'objet StringBuilder dans le constructeur de chaîne.