La classe Currency per la Gestione delle Valute in Java

Concetti Chiave
  • La classe Currency in Java rappresenta una valuta e fornisce metodi per ottenere informazioni come il codice valuta, il simbolo e le cifre frazionarie predefinite.
  • È possibile ottenere un oggetto Currency per una specifica impostazione locale o per un codice valuta specifico.
  • La classe supporta metodi per ottenere il nome della valuta, il codice numerico e il simbolo della valuta.
  • La classe è utile per gestire valute in applicazioni che richiedono operazioni finanziarie, come calcoli di conversione o visualizzazione di importi monetari.

La classe Currency

La classe Currency incapsula informazioni su una valuta.

Non definisce costruttori. I metodi supportati da Currency sono mostrati nella tabella seguente:

Metodo Descrizione
static Set<Currency> getAvailableCurrencies() Restituisce un Set<Currency> delle valute supportate.
String getCurrencyCode() Restituisce il codice (come definito da ISO 4217) che descrive la valuta invocante.
int getDefaultFractionDigits() Restituisce il numero di cifre dopo il punto decimale che sono normalmente usate dalla valuta invocante. Per esempio, ci sono due cifre frazionarie normalmente usate per i dollari.
String getDisplayName() Restituisce il nome della valuta invocante per l'impostazione locale predefinita.
String getDisplayName(Locale loc) Restituisce il nome della valuta invocante per l'impostazione locale specificata.
static Currency getInstance(Locale oggettoLocale) Restituisce un oggetto Currency per l'impostazione locale specificata da oggettoLocale.
static Currency getInstance(String codice) Restituisce un oggetto Currency associato al codice valuta passato in codice.
int getNumericCode() Restituisce il codice numerico (come definito da ISO 4217) per la valuta invocante.
String getNumericCodeAsString() Restituisce in forma stringa il codice numerico (come definito da ISO 4217) per la valuta invocante.
String getSymbol() Restituisce il simbolo di valuta (come ad esempio €) per l'oggetto invocante.
String getSymbol(Locale oggettoLocale) Restituisce il simbolo di valuta (come ad esempio €) per l'impostazione locale passata in oggettoLocale.
String toString() Restituisce il codice valuta per l'oggetto invocante.
Tabella 1: I metodi definiti da Currency

Di seguito è riportato un esempio che dimostra l'uso della classe Currency. In questo esempio, viene creato un oggetto Currency per l'Italia e vengono stampati il simbolo della valuta e il numero di cifre frazionarie predefinite.

// Esempio di uso di Currency
import java.util.*;

class DemoValuta {

    public static void main(String[] args) {
        // Dichiara un riferimento a Currency.
        Currency v;

        // Ottiene un oggetto Currency per l'Italia.
        v = Currency.getInstance(Locale.ITALY);

        // Stampa il codice valuta.
        System.out.println("Codice valuta: " + v.getCurrencyCode());

        // Stampa il codice numerico della valuta.
        System.out.println("Codice numerico: " + v.getNumericCode());

        // Stampa il codice numerico della valuta come stringa.
        System.out.println("Codice numerico come stringa: " +
                           v.getNumericCodeAsString());

        // Stampa il simbolo della valuta.
        System.out.println("Simbolo: " +
                           v.getSymbol());

        // Stampa il simbolo della valuta per l'impostazione locale specificata.
        System.out.println("Simbolo per l'impostazione locale specificata: " +
                           v.getSymbol(Locale.ITALY));

        // Stampa le cifre frazionarie predefinite.
        System.out.println("Cifre frazionarie predefinite: " +
                           v.getDefaultFractionDigits());
    }

}

L'output generato da questo programma è il seguente:

Codice valuta: EUR
Codice numerico: 978
Codice numerico come stringa: 978
Simbolo: €
Simbolo per l'impostazione locale specificata: €
Cifre frazionarie predefinite: 2