Moltiplica le stringhe in Java
-
Moltiplica le stringhe usando
String().replace()
in Java -
Moltiplica le stringhe utilizzando l’API
Stream
in Java - Moltiplica le stringhe usando Guava in Java
In questo tutorial impareremo come moltiplicare una stringa utilizzando diversi metodi ed esempi.
Moltiplica le stringhe usando String().replace()
in Java
Il primo metodo per moltiplicare una stringa è usare la funzione replace()
della classe String
. Questo metodo di sostituzione
accetta due argomenti; il primo è l’obiettivo, che è la stringa che vogliamo essere sostituita, e il secondo è la stringa di sostituzione.
String()
prende un array di char
e poi lo formatta in una stringa. Possiamo notare che stiamo sostituendo \0
con 0. Il nostro obiettivo è moltiplicare \0
per 10 volte e unirlo alla fine di 123
. \0
è chiamato carattere nullo, che trova la fine della nostra stringa e la sostituisce con 0.
Per semplicità dell’esempio, abbiamo utilizzato un bucle per vedere ogni passaggio, ma possiamo farlo senza il bucle e avremo un’unica stringa con tutti gli 0 moltiplicati.
public class Main {
public static void main(String[] args) {
for (int i = 0; i <= 10; i++) {
String result = new String(new char[i]).replace("\0", "0");
System.out.println("123" + result);
}
}
Produzione:
123
1230
12300
123000
1230000
12300000
123000000
1230000000
12300000000
123000000000
1230000000000
Moltiplica le stringhe utilizzando l’API Stream
in Java
Possiamo usare l’API Stream
introdotta in Java 8 per moltiplicare una stringa e poi unirle alla fine della stringa. Nell’esempio seguente, Stream.generate()
viene chiamato per creare nuovi flussi dal fornitore; nel nostro caso, il fornitore è ourString
. limit()
è usato con lo Stream
per limitare il numero di valori che deve restituire.
Il metodo reduce()
viene utilizzato per eseguire un’operazione binaria e quindi restituire un singolo valore. Stiamo aggiungendo gli elementi e quindi restituendo il valore aggiunto. Possiamo notare che dopo tutte le operazioni otteniamo il risultato1
di Optional<String>
, che viene restituito quando c’è la possibilità che il risultato sia vuoto.
Alla fine, possiamo controllare se il result1
non è vuoto usando isPresent()
e poi prendere la stringa usando il metodo get()
.
import java.util.Optional;
import java.util.stream.Stream;
public class Main {
public static void main(String[] args) {
String ourString = "123";
for (int count = 0; count <= 10; count++) {
Optional<String> result1 =
Stream.generate(() -> ourString).limit(count).reduce((a, b) -> a + b);
String finalResult;
if (result1.isPresent()) {
finalResult = result1.get();
System.out.println(finalResult);
}
}
}
}
Produzione:
123
123123
123123123
123123123123
123123123123123
123123123123123123
123123123123123123123
123123123123123123123123
123123123123123123123123123
123123123123123123123123123123
Moltiplica le stringhe usando Guava in Java
Nell’ultimo metodo per moltiplicare le stringhe in Java, useremo una libreria chiamata Guava
. Per utilizzare questa libreria, dobbiamo importarla utilizzando la seguente dipendenza Maven.
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>30.0-jre</version>
</dependency>
Il metodo Strings.repeat()
della libreria Guava può essere utilizzato per ripetere più volte ourString
. Ci vogliono due argomenti, la stringa che vogliamo moltiplicare e poi il conteggio delle ripetizioni.
import com.google.common.base.Strings;
public class Main {
public static void main(String[] args) {
String ourString = "1234";
for (int count = 0; count < 5; count++) {
String finalResult = Strings.repeat(ourString, count);
System.out.println(finalResult);
}
}
}
Produzione:
1234
12341234
123412341234
1234123412341234
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn