Ripeti i caratteri della stringa in Java
-
Usa
String.chars()
in Java 8 per ripetere tutti i caratteri in una stringa -
Usa
String.codePoints()
Java 8 per eseguire il bucle su tutti i caratteri in una stringa in Java -
Usa
String.toCharArray()
per ripetere tutti i caratteri in una stringa in Java -
Usa
StringCharacterIterator
per ripetere tutti i caratteri in una stringa in Java -
Usa
String.split()
per ripetere tutti i caratteri in una stringa in Java
Questo articolo introdurrà vari metodi per iterare su ogni carattere in una stringa in Java.
Usa String.chars()
in Java 8 per ripetere tutti i caratteri in una stringa
Java 8 ci fornisce un nuovo metodo String.chars()
che restituisce un IntStream
. L ‘IntStream
restituito contiene una rappresentazione intera dei caratteri nella stringa. Qui otteniamo stream1
da myString.chars()
.
Mappiamo l’IntStream
restituito in un oggetto. Lo stream1.mapToObj()
converte i valori interi nei rispettivi equivalenti di caratteri. Tuttavia, per visualizzare e leggere i caratteri, dobbiamo convertirli in una forma di caratteri user-friendly.
import java.util.stream.IntStream;
public class ForEachChar {
public static void main(String[] args) {
String myString = "Hello There!";
String myString2 = "My Friends";
String myString3 = "Happy Coding";
IntStream stream1 = myString.chars();
IntStream stream2 = myString2.chars();
IntStream stream3 = myString3.chars();
stream1.mapToObj(Character::toChars).forEach(System.out::print);
System.out.println("");
stream2.mapToObj(i -> new Character((char) i)).forEach(System.out::print);
System.out.println("");
stream3.forEach(i -> System.out.print(Character.toChars(i)));
}
}
Produzione:
Hello There!
My Friends
Happy Coding
Usa String.codePoints()
Java 8 per eseguire il bucle su tutti i caratteri in una stringa in Java
Java 8 String.codePoints()
restituisce un IntStream
di punti di codice Unicode da questa sequenza. Restituisce i valori ASCII
del carattere passato.
Possiamo mappare l’IntStream
restituito su un oggetto usando stream.mapToObj
in modo che venga automaticamente convertito in un Stream<Character>
. Usiamo il metodo di riferimento e stampiamo ogni carattere nella stringa specificata.
import java.util.stream.IntStream;
public class ForEachChar {
public static void main(String[] args) {
String myString = "Happy Coding";
IntStream stream = myString.codePoints();
stream.mapToObj(Character::toChars).forEach(System.out::print);
}
}
Produzione:
Happy Coding
Usa String.toCharArray()
per ripetere tutti i caratteri in una stringa in Java
Il metodo String.toCharArray()
converte la stringa data in una sequenza di caratteri. Restituisce un array Character
la cui lunghezza è simile alla lunghezza della stringa.
Per iterare su ogni carattere in una stringa, possiamo usare toCharArray()
e visualizzare ogni carattere.
public class ForEachChar {
public static void main(String[] args) {
String myString = "Hello Friends";
char[] chars = myString.toCharArray();
int len = chars.length;
System.out.println("length of the char array: " + len);
for (char ch : chars) {
System.out.println(ch);
}
}
}
Produzione:
length of the char array: 13
H
e
l
l
o
F
r
i
e
n
d
s
Usa StringCharacterIterator
per ripetere tutti i caratteri in una stringa in Java
La classe StringCharacterIterator
implementa un’iterazione bidirezionale della stringa. Prende una stringa come parametro, che costruisce un iteratore con un indice iniziale di 0.
Nel cicli while
, chiamiamo current()
sull’iteratore it
, che restituisce il carattere nella posizione corrente o restituisce DONE
se la posizione corrente è la fine del testo.
Il metodo next()
su it
restituisce il carattere nella nuova posizione o DONE
se la nuova posizione è la fine.
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
public class ForEachChar {
public static void main(String[] args) {
String myString = "Hello Friends";
CharacterIterator it = new StringCharacterIterator(myString);
while (it.current() != CharacterIterator.DONE) {
System.out.print(it.current());
it.next();
}
}
}
Produzione:
Hello Friends
Usa String.split()
per ripetere tutti i caratteri in una stringa in Java
Il metodo String.split()
divide la stringa in base all’espressione regolare data e restituisce un nuovo array.
Nel codice seguente, usiamo myString.split("")
per dividere la stringa tra ogni carattere. Possiamo iterare ogni carattere in str_arr
e visualizzarlo.
public class ForEachChar {
public static void main(String[] args) {
String myString = "Hello Friends";
String[] str_arr = myString.split("");
for (String ch : str_arr) {
System.out.print(ch);
}
}
}
Produzione:
Hello Friends
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedInArticolo correlato - Java String
- Converti array di byte in stringa esadecimale in Java
- Converti stringa Java in byte
- Eseguire la conversione di array da stringa a stringa in Java
- Rimuovi sottostringa dalla stringa in Java
- Confronta le stringhe in Java
- Genera stringa casuale in Java