Java/Tipi di dati
Wikibooks, manuali e libri di testo liberi.
Indice |
[modifica] Tipi
La nozione di Tipo proviene dall'algebra. Un tipo di dati è costituito da un insieme di valori caraterizzato da un Dominio (che può essere finito o infinito) e da delle Operazioni. In ambito informatico i Tipi sono sempre caratterizzati da domini Finiti (che possono al massimo essere considerati virtualmente infiniti).
[modifica] Tipi Primitivi
Java offre vari tipi di dati detti "primitivi", per distinguerli dagli oggetti, che sono tipi composti definiti dall'utente. I tipi primitivi sono:
- quattro tipi per gli interi (byte - 8 bit, short - 16 bit, int - 32 bit, long - 64 bit);
- due tipi per i numeri in virgola mobile (float - 32 bit e double - 64 bit)
- un tipo per i caratteri (char)
- un tipo per le variabili booleane (boolean)
Ogni tipo primitivo è una struttura algebrica composta da un insieme numerico e da un set di operazioni definite su di esso. Ad ogni tipo di dato primitivo è associata una classe wrapper, che serve quando dobbiamo usare un tipo primitivo come oggetto. A queste classi sono inoltre associati dei metodi utili per fare operazioni di conversione.
[modifica] Gli Array
Gli array sono implementati in modo particolare in Java, nonostante essi possano essere allocati come degli oggetti e siano dotati di variabili istanza non c’è una classe Array. Si può dire che un array in Java sia un oggetto con una rappresentazione run-time. La classe Array è costruita automaticamente durante l’esecuzione dei programmi. La dichiarazione di un array avviene in Java in modo molto semplice, senza l'indicazione esplicita del numero di elementi. La dichiarazione avviene come se si trattasse di un tipo di dati normale, con la differenza che si aggiungono una coppia di parentesi quadre a sottolineare che si tratta di un array di elementi di quel tipo. Per esempio:
int[] aInt;
dichiara che aInt è un array in cui gli elementi sono di tipo intero (int), senza specificare quanti siano.
Per fare in modo che l'array esista effettivamente, occorre che questo sia inizializzato. Si usa per questo l'operatore new seguito dal tipo di dati con il numero di elementi racchiuso tra parentesi quadre. Per esempio,
aInt= new int[7];
Il riferimento a un elemento di un array avviene aggiungendo al nome della variabile che rappresenta l'array stesso, il numero dell'elemento, racchiuso tra parentesi quadre. Il primo elemento si raggiunge con l'indice 0, mentre l'ultimo corrisponde alla dimensione meno uno.
È possibile determinare la dimensione di un array, espressa in numero di elementi, leggendo il contenuto della variabile length dell'oggetto array (ad es. aInt.length )
[modifica] Le stringhe
Nel linguaggio Java le stringhe sono degli oggetti. Ci sono due tipi di oggetti stringa: la classe String per oggetti stringa di sola lettura (immutabili), la classe StringBuffer per oggetti stringa che possono essere manipolati. Anche se in Java le stringhe sono degli oggetti veri e propri, il linguaggio prevede una sintassi conveniente a trattare le stringhe come se fossero dei tipi primitivi, così quando una stringa compare in un programma, Java crea automaticamente un’istanza della classe String con il valore indicato; sono inoltre comprese nel linguaggio alcune facilitazioni sintattiche per aiutare i programmatori a fare comuni operazioni sulle stringhe, come le concatenazioni di oggetti String o la conversione da altri tipi di dati.
SEMPLICI ESEMPI DI UTILIZZO DI STRINGHE:
dichiarazione di due stringhe
String s1 = "stringa1"; String s2 = "stringa2";
confronto di due stringhe
if(s1.equals(s2))
stampa a video di una stringa
System.out.println(s1);
