programmiamo in java
Per programmare

Consideriamo questo problema:

Scrivere un programma in cui vengano memorizzati due numeri interi 233 e 34, la loro somma, il loro prodotto, la parte intera della divisione e il resto.

Memorizzare contemporaneamente il nome del programmatore.

Visualizzare a monitor il messaggio che riporti il nome dell'autore e tante righe quante ne servono per visualizzare la somma, il prodotto, il risultato della divisione e il resto.

E' un programma semplice anche se molto importante. Cosa sta a significare memorizza ... ? Memorizzare dove? come?

Sappiamo che tutti i programmi salvano le informazioni da accantonare per un uso futuro in una porzione della memoria RAM. Questa porzione può essere vista come una enorme città con milioni di case identiche identificate da un indirizzo (numero binario).

Il programma deve sapere cosa salvare e come identificare tutto ciò che inserisce in qualche locazione di memoria.

Ad ogni grandezza si deve associare un nome ed essa sarà associata ad una variabile, ossia ad un nome un'etichetta che identificherà in modo univoco quanto definito. Il programma assocerà la variabile all'indirizzo binario della locazione in cui inserirà quanto definito.

variabile-indirizzo

variabile - indirizzo RAM

Non basta assegnare una etichetta bisogna pure definire un tipo, perchè il dato viene trattato in modo diverso a seconda della tipologia.

string int

Se associamo alla variabile una scritta le informazioni saranno salvate in modo che la scritta non vari nel tempo e ad ogni lettera sarà associato un Byte (8 bit) che può essere facilmente decodificato come simbolo di tastiera. In java le scritte devono essere associate all'oggetto String .

Se associamo alla variabile un numero bisogna precisare il tipo. Abbiamo vari tipi di numeri e tipi primitivi ed ora li elenchiamo:

Tipo primitivo Dimensione Minima Massima Tipo wrapper
Boolean -- false true Boolean
Char 16 bit Unicode-0 Unicode-max Character
byte 8 bit -128 127 Byte
Short 16 bit -215 215-1 Short
int 32 bit -2147483648 2147483647 Integer
long 64 bit -9223372036854775808 9223372036854775807 Long
float 32 bit decimali con 9 cifre   Float
double 64 bit decimali con massima precisione   Double
void ____ non restituisce niente   Void

In questo elenco sono presenti anche tre tipi primitivi non associati ai numeri. Essi sono:

Char => carattere tipo a cui si associa solo una lettera.
Boolean => logica o vero (true) o falso (false)
Void => niente quando non vogliamo ritornare nulla al programma chiamante.

Le variabili sono costituite da un'etichetta da un tipo e per l'eseguibile un indirizzo di memoria ram.

Nel programma dobbiamo dichiarare le variabili con una dichiarazione del tipo:

int a; - oppure - int a=233;

Nel primo caso abbiamo prima dichiarato il tipo , quindi l'etichetta ma non abbiamo definito il valore associato alla variabile.

Nel secondo caso anche il valore associato alla variabile.

Una volta definita la variabile potremo sempre cambiare il valore associato alla stessa. Nel nostro caso se durante l'esecuzione del programma scriviamo a=-45; la variabile modificherà il valore nel nuovo numero.

Per le variabili stringhe la dichiarazione sarà del tipo:

Sring nome; - oppure - String nome="filippo il bello"; (la frase fra doppi apici).

Per i tipi booleani:

boolean vero; - oppure - boolean vero=true;

per i char

char lettera; - oppure - char lettera='c'; (la lettera fra apici semplici).