Stringa metodi toLowerCase e toUpperCase in Java

1. Panoramica

In questo tutorial, tratteremo i metodi toUpperCase e toLowerCase inclusi nella classe Java String .

Inizieremo creando una stringa chiamata name :

String name = "John Doe";

2. Converti in maiuscolo

Per creare una nuova stringa maiuscola basata sul nome , chiamiamo il metodo toUpperCase :

String uppercaseName = name.toUpperCase();

Ciò si traduce in uppercaseName con il valore "JOHN DOE" :

assertEquals("JOHN DOE", uppercaseName);

Nota che le stringhe non sono modificabili in Java e che la chiamata a toUpperCase crea una nuova stringa . In altre parole, il nome rimane invariato quando si chiama toUpperCase .

3. Converti in minuscolo

Allo stesso modo, creiamo una nuova stringa minuscola basata sul nome chiamando toLowerCase :

String lowercaseName = name.toLowerCase();

Ciò si traduce in lowercaseName con il valore "john doe" :

assertEquals("john doe", lowercaseName);

Proprio come con toUpperCase , toLowerCase non cambia il valore di name .

4. Cambia maiuscole / minuscole utilizzando le impostazioni internazionali

Inoltre, fornendo una Locale ai metodi toUpperCase e toLowerCase , possiamo cambiare il caso di una stringa utilizzando regole specifiche della locale.

Ad esempio, possiamo fornire una Locale in maiuscolo con una i turca (Unicode 0069 ) :

Locale TURKISH = new Locale("tr"); System.out.println("\u0069".toUpperCase()); System.out.println("\u0069".toUpperCase(TURKISH));

Di conseguenza, questo si traduce in una I maiuscola e una I maiuscola punteggiata :

I İ

Possiamo verificarlo utilizzando le seguenti affermazioni:

assertEquals("\u0049", "\u0069".toUpperCase()); assertEquals("\u0130", "\u0069".toUpperCase(TURKISH));

Allo stesso modo, possiamo fare lo stesso per toLowerCase usando il turco I (Unicode 0049 ):

System.out.println("\u0049".toLowerCase()); System.out.println("\u0049".toLowerCase(TURKISH));

Di conseguenza, questo si traduce in un minuscolo i ed un errati privi di punti minuscolo i :

i ı

Possiamo verificarlo utilizzando le seguenti affermazioni:

assertEquals("\u0069", "\u0049".toLowerCase()); assertEquals("\u0131", "\u0049".toLowerCase(TURKISH));

5. conclusione

In conclusione, la classe Java String include i metodi toUpperCase e toLowerCase per modificare il caso di una String . Se necessario, è possibile fornire una Locale per fornire regole specifiche della locale quando si modifica il caso di una String.

Il codice sorgente di questo articolo, inclusi gli esempi, può essere trovato su GitHub.