La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Tipi primitivi in java tipodefaultmem.daa booleanfalse1 bittrue false char'\u0000'16 bit065535 byte08 bit-127128 short016 bit-3276832767 int032 bit-2^312^31-1.

Presentazioni simili


Presentazione sul tema: "Tipi primitivi in java tipodefaultmem.daa booleanfalse1 bittrue false char'\u0000'16 bit065535 byte08 bit-127128 short016 bit-3276832767 int032 bit-2^312^31-1."— Transcript della presentazione:

1 Tipi primitivi in java tipodefaultmem.daa booleanfalse1 bittrue false char'\u0000'16 bit065535 byte08 bit-127128 short016 bit-3276832767 int032 bit-2^312^31-1 long0L64 bit-2^632^63-1 float0.0f32 bite,E esp10 x double0.0d64 bit

2 Particolarità tipi primitivi esadecimale: 0x1A ottale: 071 binario: 0b00100 float e double non sono "precisi" e non sono adatti per calcoli finanziari in java SE7 è possibile utilizzare l'underscore per rendere più leggibili le cifre. es: 0x00ff_f367, 1_000_000

3 cast e conversioni il tipo boolean non può essere convertito Non si può assegnare ad un float un valore di tipo double direttamente, ma bisogna usare il casting (se non ci sta.. Infinity) Si può sempre assegnare ad una variabile di tipo piu "grande" una di tipo più piccolo

4 cast e conversioni Per convertire double -> long (numeri con la virgola in interi) (int) x Math.round(x)fino a.5 Math.ceil(x)3.1 ->4 (intero maggiore) Math.floor(x)3.7 ->3 (intero minore) non ci sono problemi da long a double

5 numeri e testo In ogni stampa a video è implicita la conversione da numero a testo Per convertire in esadecimale, ottale, binario: Integer.toBinaryString( i ); Integer.toHexString( i ); Integer.toOctalString( i ); restituiscono una stringa senza 0,0x,0b

6 testo e numeri Possiamo estrarre un numero ad un testo utilizzando il metodo statico Integer.parseInt(s) Float.parseFloat(s) Long.parseLong(s) Double.parseDouble(s) Boolean.parseBoolean(s)

7 testo e numeri con parse.. attenzione: i vari metodi statici sono piuttosto "delicati" nel senso che dobbioamo passare nella stringa solo e soltanto il numero, senza aggiunta di spazi o altro; nel caso di Integer.parseInt e Long.parseLong si ha errore anche convertendo una stringa che rappresenti il numero con la virgola

8 prevenzione errore s = "123.3"; try { int a = Integer.parseInt(s); System.out.println("int " + a); } catch (NumberFormatException e) { System.out.println("err " + s); }

9 scansione di una stringa String s = "ciao"; s.length() /*lunghezza della stringa */ s.charAt(i) /*mostra il carattere nella posizione i (i=0 primo carattere) */ (int) s.charAt(i) /* mostra il codice ascii dell' i-esimo carattere */

10 ricerche in una stringa s.indexOf(sottoStringa) restituisce -1 se non ha trovato nulla, oppure l'indice della prima occorrenza s.contains(sottoStringa) restiuisce un boolean (true o false) s.lastIndexOf(sottoStringa) restituisce -1 se non ha trovato nulla, oppure l'indice della prima occorrenza partendo dal fondo

11 ricerche in una stringa i metodi indexOf e lastIndexOf hanno una anche una versione con un numero come secondo parametro. Questo numero rappresenta la posizione da cui iniziare a ricercare la sottostringa. Utile per trovare tutte le occorrenze… Tecnicamente il nome del metodo con la dichiarazione dei tipi di parametri passati si chiama firma o segnatura. Quando un metodo ha più firme si parla di overloading

12 Esercizi data una parola, scriverla tante volte quanto sono le sue lettere, ogni volta con una lettera maiuscola individuare il numero di parole in una frase data una stringa e una sottostringa, stampare a video la stringa originale con le occorrenze della sottostringa comprese tra [ ]


Scaricare ppt "Tipi primitivi in java tipodefaultmem.daa booleanfalse1 bittrue false char'\u0000'16 bit065535 byte08 bit-127128 short016 bit-3276832767 int032 bit-2^312^31-1."

Presentazioni simili


Annunci Google