Come invertire una stringa in java

Come invertire una stringa in java
Per invertire una stringa significa avere la stringa nell'ordine inverso. Ad esempio, la stringa "ABCDE" può essere invertita in "EDCBA" e "Pool" può essere invertita in "Loop". Come un altro esempio, la stringa "ABC def ghi" può essere invertita a "IHG Fed CBA".

La stringa letterale di un oggetto per la classe stringa è costante. Ciò significa che i non dei suoi personaggi possono essere modificati o sfollati. Fortunatamente, Java ha altre due classi simili a stringhe, chiamate StringBuffer e StringBuilder. Ognuna di queste due classi ha il metodo di reverse () per invertire una stringa.

Quindi, per invertire una stringa, converti l'oggetto stringa in un oggetto StringBuffer o StringBuilder. Utilizzare il metodo di reverse () di una di queste classi per invertire la stringa. Quindi converti il ​​risultato in un oggetto stringa.

Per convertire un oggetto String in un oggetto StringBuffer, utilizzare l'oggetto String nel costruttore StringBuffer. Per convertire un oggetto StringBuffer in un oggetto String, utilizzare l'oggetto StringBuffer nel costruttore String.

Per convertire un oggetto String in un oggetto StringBuilder, utilizzare l'oggetto String nel costruttore StringBuilder. Per convertire un oggetto StringBuilder in un oggetto String, utilizzare l'oggetto StringBuilder nel costruttore String.

Costruzioni di stringa e stringabuffer

String in StringBuffer

La sintassi per costruire un oggetto StringBuffer da un oggetto stringa è:

StringBuffer SB = new StringBuffer (string Str);

dove SB è l'oggetto StringBuffer. Il seguente programma illustra questo:

Classe pubblica TheClass
public static void main (string [] args)
String str = "livello superiore";
StringBuffer SB = new StringBuffer (STR);
Sistema.fuori.println (SB);

L'output è:

Livello più alto

Si noti che il programma non ha dovuto importare la classe StringBuffer.

StringBuffer a String

La sintassi per costruire un oggetto stringa da un oggetto StringBuffer è:

String str = new String (StringBuffer SB);

dove STR è l'oggetto stringa. Il seguente programma illustra questo:

Classe pubblica TheClass
public static void main (string [] args)
StringBuffer SB = new StringBuffer ("Livello superiore");
String str = new String (SB);
Sistema.fuori.println (str);

L'output è:

Livello più alto

String e costruzioni di costruttori di stringa

String in StringBuilder

La sintassi per costruire un oggetto StringBuilder da un oggetto stringa è:

StringBuilder SBL = new StringBuilder (String Str);

dove SBL è l'oggetto StringBuilder. Il seguente programma illustra questo:

Classe pubblica TheClass
public static void main (string [] args)
String str = "livello superiore";
StringBuilder SBL = new StringBuilder (STR);
Sistema.fuori.println (SBL);

L'output è:

Livello più alto

Si noti che il programma non ha dovuto importare la classe StringBuilder.

Stringbuilder a String

La sintassi per costruire un oggetto stringa da un oggetto StringBuilder è:

String str = new String (StringBuilder SBL);

dove STR è l'oggetto stringa. Il seguente programma illustra questo:

Classe pubblica TheClass
public static void main (string [] args)
StringBuilder SBL = new StringBuilder ("Livello superiore");
String str = new String (SBL);
Sistema.fuori.println (str);

L'output è:

Livello più alto

Invertire con StringBuffer

La procedura per invertire una stringa con StringBuffer è la seguente:

StringBuffer SB = new StringBuffer (String STR)
StringBuffersbr = sb.inversione()
String strr = new String (StringBuffersbr);

Il seguente programma illustra questo:

Classe pubblica TheClass
public static void main (string [] args)
String str = "livello superiore";
StringBuffer SB = new StringBuffer (STR);
StringBuffersbr = sb.inversione();
String strr = new String (SBR);
Sistema.fuori.println (strr);

L'output è:

Livello Rehgih

Invertire con StringBuilder

La procedura per invertire una stringa con StringBuilder è la seguente:

StringBuilder SBL = new StringBuilder (String STR)
StringBuilder SBLR = SBL.inversione()
String strr = new String (StringBuilder SBLR);

Il seguente programma illustra questo:

Classe pubblica TheClass
public static void main (string [] args)
String str = "livello superiore";
StringBuilder SBL = new StringBuilder (STR);
StringBuilder SBLR = SBL.inversione();
String strr = new String (SBLR);
Sistema.fuori.println (strr);

L'output è:

Livello Rehgih

StringBuffer e StringBuilder

StringBuilder è una forma semplificata di StringBuffer. Se StringBuffer viene utilizzato con più thread, ci sarà una buona sincronizzazione. StringBuilder non offre una buona sincronizzazione con più thread. StringBuilder dovrebbe essere utilizzato solo con programmi a thread singolo.

I metodi principali per StringBuilder e StringBuffer sono i metodi Append () e Insert (). Con questi metodi, i loro letterali di stringa possono essere aumentati di lunghezza e anche modificati. Questi oggetti non possono avere il valore nullo come uno dei loro personaggi.

Invertire con stringa e array

Il valore della stringa (caratteri che formano la stringa letterale) per l'oggetto stringa è costante. I personaggi possono, ovviamente, essere letti. La sequenza di caratteri è di sola lettura. Se i caratteri vengono letti all'indietro in un array e l'array convertito in un oggetto stringa della classe stringa, quella sarebbe la revoca della stringa.

Utilizzando questa procedura, la dimensione della stringa deve essere determinata con la seguente istruzione:

Len = str.lunghezza();

dove lunghezza () è il metodo della classe stringa per restituire la lunghezza della stringa. Per creare una serie di cartoni da una stringa, utilizzare la seguente costruzione di stringhe:

String Strr = new String (char [])

Il seguente programma utilizza questa procedura per invertire una stringa in Java:

Classe pubblica TheClass
public static void main (string [] args)
String str = "livello superiore";
int len ​​= str.lunghezza();
char [] arr = new char [len];
per (int i = len; i> 0; i--)
arr [len-i] = str.Charat (I-1);
String strr = new String (arr);
Sistema.fuori.println (strr);

L'output è:

Livello Rehgih

come prima. Nota l'uso del metodo charat () per ottenere il carattere su un indice dell'oggetto stringa.

Conclusione

La stringa letterale di un oggetto per la classe stringa è costante. Ciò significa che i non dei suoi personaggi possono essere modificati o sfollati. Fortunatamente, Java ha altre due classi simili a stringhe, chiamate StringBuffer e StringBuilder. Ognuna di queste due classi ha il metodo di reverse () per invertire una stringa.

Quindi, per invertire una stringa, converti l'oggetto stringa in un oggetto StringBuffer o StringBuilder. Utilizzare il metodo di reverse () di una di queste classi per invertire la stringa. Quindi converti il ​​risultato in un oggetto stringa.

Per convertire un oggetto String in un oggetto StringBuffer, utilizzare l'oggetto String nel costruttore StringBuffer. Per convertire un oggetto StringBuffer in un oggetto String, utilizzare l'oggetto StringBuffer nel costruttore String.

Per convertire un oggetto String in un oggetto StringBuilder, utilizzare l'oggetto String nel costruttore StringBuilder. Per convertire un oggetto StringBuilder in un oggetto String, utilizzare l'oggetto StringBuilder nel costruttore String.