wikiHow è una "wiki"; questo significa che molti dei nostri articoli sono il risultato della collaborazione di più autori. Per creare questo articolo, 10 persone, alcune in forma anonima, hanno collaborato apportando nel tempo delle modifiche per migliorarlo.
Questo articolo è stato visualizzato 16 091 volte
Le stringhe sono sequenze di caratteri. Per esempio, "Ciao!" è una stringa, perché è formata dai caratteri “C”, “i”, “a”, “o” e “!”. In Java le stringhe sono oggetti, il che significa che esiste una classe String, che avrà quindi i propri attributi e i propri metodi. Possiamo usare i vari metodi della classe String per manipolare le stringhe.
Passaggi
Creare una Stringa
Trovare la Lunghezza di una Stringa
-
1Cerchiamo di capire cosa significhi trovare la lunghezza di una stringa. La lunghezza di una stringa è il numero di caratteri contenuti in essa. Per esempio, la lunghezza della stringa "Hello!" è 6, poiché essa contiene 6 caratteri.
-
2Invoca il metodo
length()
su un oggetto di tipo String e salva il risultato in una variabile intera. -
3Ecco un programma di esempio che misura la lunghezza di una stringa appena creata.Pubblicità
Invertire una Stringa
-
1Cerchiamo di capire cosa significhi invertire una stringa. Invertire una stringa significa invertire l'ordine dei caratteri in essa contenuti. Per esempio, la stringa inversa di: "Hello!" è: "!olleH". Esistono diversi modi per invertire una stringa in Java.
-
2Usando il metodo reverse() della classe StringBuffer. Crea un oggetto StringBuffer che prende come parametro di ingresso la stringa da invertire. Usa il metodo reverse() di StringBuffer per poi ottenere la nuova stringa attraverso il metodo toString().
-
3Iterando dall'ultimo al primo carattere della stringa e copiandoli in append su di uno StringBuffer ad ogni iterazione. Crea un nuovo oggetto StringBuffer passandogli come parametro per inizializzarlo la lunghezza della stringa che vuoi invertire. A questo punto, usa un ciclo for per iterare sulla stringa, iniziando dall'ultimo carattere. A ciascuna iterazione, aggiungi in append allo StringBuffer il carattere che si trova nella posizione descritta dall'indice. Ora, per ottenere la stringa invertita, ti basterà utilizzare il metodo toString().
-
4Scrivendo una funzione ricorsiva per invertire la stringa. Nella funzione ricorsiva, il caso base è quello in cui la stringa è null, o se la sua lunghezza è minore o uguale ad uno. In tutti gli altri casi, il metodo reverse() restituisce una chiamata a se stesso prendendo come parametro la stringa di partenza a meno del carattere iniziale, e il primo carattere in append. Quindi, se la stringa passata alla prima chiamata è "Hello!", la reverse() chiamata nel return alla prima ricorsione prenderà come parametro la stringa "ello!".
-
5Convertendo la stringa in una vettore di caratteri per poi scambiare il primo con con l'ultimo, il secondo con il penultimo ecc. Per prima cosa, converti la stringa in un vettore di caratteri chiamando il metodo toCharArray() sulla stringa. A quel punto, ricava l'indice della posizione dell'ultimo carattere contenuto nel vettore, che sarà pari alla lunghezza della stringa meno uno. Ora itera sul vettore, scambiando, ad ogni iterazione, l'i-esimo carattere con quello che si trova nella posizione dell'ultimo carattere, meno i. Infine, riconverti il vettore di caratteri in una stringa.
-
6Ecco l'output che otterrai da uno qualsiasi dei metodi per l'inversione di stringhe che abbiamo appena visto.Pubblicità
Effettuare il Trim Degli Spazi Bianchi di una Stringa
-
1Cerchiamo di capire cosa significhi effettuare il trim degli spazi bianchi di una stringa. Effettuare il trim di una stringa in java, significa rimuovere gli spazi bianchi che si trovano in capo e in coda alla stringa. Per esempio, se hai la stringa: "
-
2Usa il metodo trim() della classe String su un un oggetto di tipo String per effettuare il trim degli spazi bianchi. Nota che il metodo trim() lancerà un'eccezione nel caso in cui la stringa su cui è stato invocato è null. Il metodo trim() non modificherà il contenuto originale della stringa su cui è stato invocato, poiché le stringhe in Java sono immutabili, il che significa che lo stato di una stringa non può essere modificato dopo la sua creazione. Per questo motivo, il metodo trim() restituirà una nuova stringa che sarà la copia della stringa originale a meno degli spazi bianchi iniziali e finali.
-
3Ecco un programma di esempio che effettua il trim degli spazi bianchi di una stringa:Pubblicità
Splittare una Stringa
-
1Cerchiamo di capire cosa significhi splittare una stringa. Splittare una stringa in Java significa dividere la stringa in un vettore di sotto-stringhe, utilizzando una certo carattere come delimitatore. Per esempio, se splittassi la stringa: "red,blue,green,yellow,pink" utilizzando la virgola come delimitatore, otterrei il vettore { "red", "blue", "green", "yellow", "pink" }. Ecco tre diversi modi per splittare una stringa.
-
2Usando uno
StringTokenizer
per dividere in token la stringa. Importa la classejava.util.StringTokenizer
. A questo punto, crea una nuova istanza diStringTokenizer
passando come parametri al costruttore la stringa da suddividere in token e il carattere da utilizzare come delimitatore. Se non passassi un delimitatore al costruttore, il tokenizer utilizzerà come delimitatore di default lo spazio bianco. Una volta creato loStringTokenizer
, puoi usare il metodonextToken()
per farti restituire ciascun token.- Prima di Java 1.4, la classe
StringTokenizer
era utilizzata per splittare le stringhe in Java. Ora, invece, l'utilizzo diStringTokenizer
è sconsigliato, ed è consigliato utilizzare il metodosplit()
della classeString
, o di usare il packagejava.util.regex
.
- Prima di Java 1.4, la classe
-
3Usando il metodo
split()
della classeString
. Il metodosplit()
prenderà in ingresso il delimitatore come parametro, e restituirà un vettore di sotto-stringhe, che altro non sono che i token restituiti nel metodo precedente dalloStringTokenizer
. -
4Usando un'espressione regolare. Importa il package
java.util.regex.Pattern
. Usa il metodocompile()
della classePattern
per settare il delimitatore, e a quel punto passa al metodosplit()
la stringa che vuoi splittare. IlPattern
ti restituirà un vettore di sotto-stringhe. -
5Ecco l'output che otterrai da uno qualsiasi dei metodi per splittare le stringhe.Pubblicità