Java base I: Sintassi e tipi di dati

Slides:



Advertisements
Presentazioni simili
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F1 Primi programmi.
Advertisements

Introduzione al linguaggio C++
Corso di Fondamenti di Programmazione canale E-O
LINGUAGGIO DI PROGRAMMAZIONE C
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A2 Java: le basi del linguaggio.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Linee guida per la programmazione
Introduzione alla programmazione A. Ferrari. Il linguaggio C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede.
Selezione - approfondimento
PHP.

I DATI I PRINCIPALI TIPI DI DATO UTILIZZATI IN PROGRAMMAZIONE
Introduzione al linguaggio C
Programmazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++
Programmazione in Java (3)
Tipi di dato e controllo del flusso Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 7 (5 novembre 2008) Programmazione in Java: lessico, variabili, tipi primitivi, assegnamento a variabile.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Variabili e tipi primitivi Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Assegnamento di valore a una variabile Anno Accademico 2009/2010.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
1 Corso di Informatica (Programmazione) Lezione 13 (21 novembre 2008) Programmazione in Java: stringhe e array.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Prof. Raffaele Montella
Programmazione Corso di laurea in Informatica
Istruzioni di selezione in Java Programmazione Corso di laurea in Informatica.
CAPITOLO 4 LINGUAGGIO JAVA: COSTRUTTI DI BASE. ALFABETO Java adotta la codifica standard Unicode della società Unicode, Inc. (ftp://ftp.unicode.org) definito.
Dichiarazioni e tipi predefiniti nel linguaggio C
Fondamenti di Informatica A - Massimo Bertozzi TIPI DI DATO IN C++ What's in a name? That which we call a rose By any other name would smell as sweet.
Il Linguaggio C.
Espressioni condizionali
LA DOCUMENTAZIONE È noto che un buon programma dovrebbe essere ben documentato.. ma lesperienza insegna che quasi mai ciò viene fatto! –non cè tempo, ci.
Programmazione in Java
Programmazione in Java Claudia Raibulet
4 Tipi di dati & variabili
JAVA Franco Bombi 8 ottobre FB Introduzione Java è un linguaggio di impiego generale, basato su classi e orientato agli oggetti Java.
CODIFICA Da flow-chart a C++.
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
Parte 4 Elementi di Informatica di base
Tipi di dati elementari
Elementi di Informatica di base1 Parte 3 Elementi di Informatica di base Dott.ssa Elisa Tiezzi.
Sintassi base e struttura di un programma
Laboratorio di Informatica1 Parte 4 Laboratorio di Informatica Dott.ssa Elisa Tiezzi Dott.ssa Elisa Mori.
BIOINFO3 - Lezione 211 INPUT La lettura di un input dallo standard input (tastiera) si effettua utilizzando lespressione. Quando il programma incontra.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
2000 Prentice Hall, Inc. All rights reserved. Capitolo 2 (Deitel) Introduzione alla programmazione in C Indice degli argomenti Introduzione 2.2 -
Appunti di Java (J2SDK 1.4.2, JDK 1.6.0) prof. Antonella Schiavon settembre 2009.
JavaScript Generalità Cos'è JavaScript?
Lezione 3 Struttura lessicale del linguaggio
1 Parte 3 Fondamenti di programmzione. 2 Cosa è Java Linguaggio di programmazione familiare Simile a C e C++ Linguaggio di programmazione orientato a.
1 Corso di Informatica (Programmazione) Lezione 8 (7 novembre 2008) Programmazione in Java: operatori aritmetici, operatori di assegnamento e cast.
Introduzione a Javascript
Variabili Numeriche –Interi (byte, short, int, long): complemento a 2 –A virgola mobile (float, double): IEEE 745 Alfanumeriche –Carattere (char): Unicode.
Parte 3 Lo stato: variabili, espressioni ed assegnazioni
Corso di Algoritmi e Strutture Dati APPUNTI SUL LINGUAGGIO C
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
Programmazione in Java
1 Fabio Scotti – Università degli Studi di Milano Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( )
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
Informatica 6 Tipi di dato. Nelle celle di memoria di un calcolatore ci sono solo “0” e “1”, fisicamente realizzati tramite due diversi livelli di tensione.
FI - Algoritmi e Programmazione 1 Variabili Consentono di aumentare notevolmente la potenza espressiva. Una variabile è caratterizzata da:  Un nome 
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
Cicli. Ci sono almeno tre modi diversi per costruire un ciclo in C e occorre utilizzare quello che meglio si adatta alle esigenze del problema che si.
13/08/02Tipi base 1 Tipi interi Operatori numerici Tipi float Caratteri Tipo booleano.
Lezione 2 : Basi del linguaggio Variabili. Come visto nella lezione 1 le classi registrano il proprio stato nelle variabili  int cadenza = 0;  int velocita.
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Transcript della presentazione:

Java base I: Sintassi e tipi di dati

Argomenti Elementi fondamentali della sintassi Java Tipi di dati di Java Gli operatori

Obiettivi Familiarizzare con la sintassi Java Conoscere i tipi di dati Conoscere gli operatori

Java è un linguaggio Imperativo orientato al comando ESPRESSIONE COMANDO METODO CLASSE PACKAGE a + 1 C LIKE Semplice a+1; Composto if(a>1) b=a+1; Per separare gli elementi è necessario utilizzare almeno uno spazio,una tabulazione o un a capo variabile 1 riga per ogni comando operatore costante

Utility per la documentazione del codice I commenti in Java Testo che non viene preso in considerazione dal compilatore 3 tipi // /* ... */ /** ... */ Commenta tutto il codice fino a fine riga Tutto il testo racchiuso tra questi delimitatori viene considerato commento Definisce un commento che viene elaborato da javadoc Utility per la documentazione del codice

Le variabili in Java Primitive Oggetti Una variabile è una porzione di memoria in cui è immagazzinato un certo tipo di dato Java è un linguaggio fortemente tipizzato Primitive Ogni variabile deve essere di un certo tipo identificabile Oggetti  Dichirazione di una variabile [tipo] [nome_variabile];  Assegnazione di una variabile [nome_variabile] = [valore]; [tipo] [nome_variabile] = [valore];

I dati primitivi Java mette a disposizione 8 tipi di dati primitivi utili alla definizione di oggetti più complessi Numeri interi Numeri in virgola mobile char (tipo carattere) boolean byte short int long float double Dimensione prefissata INDIPENDENTE DALLA PIATTAFORMA

Requisiti di memorizzazione Intervallo (inclusivo) Tipi numeri interi Tipo Requisiti di memorizzazione Valori di Default Intervallo (inclusivo) byte 1 byte (8 bit) Da –128 a +127 short 2 byte (16 bit) Da –32.768 a +32.767 int 4 byte (32 bit) Da –2.147.483.648 a +2.147.483.647 long 8 byte (64 bit) 0L da -9 miliardi di miliardi a 9 miliardi di miliardi La valutazione di un’espressione si ferma appena il risultato è noto.

Tipi numeri in virgola mobile Tipo Requisiti di memorizzazione Valori di Default Intervallo float 4 byte 0.0F 6-7 cifre decimali significative double 8 byte 0.0 15 cifre decimali significative La valutazione di un’espressione si ferma appena il risultato è noto.

Tipo char Le variabili char contengono un unico carattere Le costanti di tipo char sono racchiuse tra apici singoli (‘’) Il carattere rappresentato è un carattere dello schema di codifica Unicode. I caratteri Unicode comprendono tutti I caratteri ASCII,caratteri di alfabeti latini e non, caratteri particolari non inclusi nello schema ASCII Il carattere Unicode occupa 2 byte e consente quindi di rappresentare 65536 caratteri diversi Indicazione carattere Unicode: \uXXXX, con XXXX numero Hex Per indicare alcuni caratteri speciali si utilizzano delle sequenze di escape

Tipo char (2) Caratteri speciali Sequenza di escape Nome Valore Unicode \b Backspace \u0008 \t Tabulazione \u0009 \n Avanzamento di riga \u000a \r Ritorno carrello \u000d \” Virgolette doppie \u0022 \’ Virgolette singole \u0027 \\ Barra rovesciata \u005c La valutazione di un’espressione si ferma appena il risultato è noto.

Tipo boolean Puo’ avere soltanto 2 valori : true o false (sono entrambe parole riservate) Tutti gli operatori comparativi (come ad esempio a>b) restituiscono un valore boolean Valori boolean sono richiesti dalle istruzioni di controllo di flusso (if, while, do-while) RETURN È il meccanismo che consente alla funzione chiamata di restituire un valore alla funzione chiamante. Sintassi return <espressione>; Per motivi di chiarezza l’espressione viene spesso racchiusa fra parentesi tonde (che però sono opzionali). La funzione chiamante è libera di trascurare il valore restituito. In C/C++ non esiste il tipo boolean In Java non è possibile convertire un valore booleano in un valore numerico Inizializzato a false

Dichiarazione e Inizializzazione Spesso alla variabile deve esser assegnato un valore iniziale Tutte le variabili prima di essere utilizzate devono essere dichiarate TIPO NOME Altrimenti viene assegnato valore di Default Inizia con carattere minuscolo Evitare uso underscore Si possono usare numeri (non all’inizio) Se più parole, la prima lettera è sempre maiuscola Dichiarazione e inizializzazione possono essere fatti nella stessa riga

Sequenze di caratteri che non possono essere usate come identificatori Le parole riservate Sequenze di caratteri che non possono essere usate come identificatori

Vengono dichiarate della variabili con l’attributo FINAL Le costanti in Java Non esistono Vengono dichiarate della variabili con l’attributo FINAL Se vengono utilizzate da più classi si usa anche la parola chiave STATIC final double WINDOW_WIDTH = 300; Uso dell’underscore per separare le parti del nome. I nomi delle costanti sono tutte in MAIUSCOLO Convenzioni

Visibilità variabili In Java i blocchi di istruzioni sono contrassegnati da due parentesi graffe: { //codice del blocco di istruzioni } Le variabili sono valide dal punto in cui sono dichiarate sino alla fine del blocco di istruzioni racchiuso tra le parentesi Le istruzioni contenute nel blocco della WHILE sono ripetute fino a quando l’espressione è verificata, ossia se ha un valore diverso da 0.

Gli Operatori (1) 5 categorie Sono caratteri speciali per istruire il compilatore sull’operazione che deve compiere con alcuni operandi variabili espressioni valori costanti 5 categorie Monadici (unari) Agiscono su un solo operando Diadici (binari) Posti tra 2 operandi Ternari Agiscono su 3 operandi Suffissi Posti dopo l’operando Prefissi Posti prima dell’operando Equivale a: [<inizializzazione>] while ([<condizione>]) { <blocco> [<incremento>] } Le tre componenti di un ciclo for sono delle espressioni. Generalmente: <inizializzazione> inizializza l’indice (variabile di controllo del ciclo) <condizione> controlla il limite superiore dell’indice <incremento> modifica il valore dell’indice Attenzione: for( ; ; ){...} genera un loop infinito

(binari su numeri interi) Gli Operatori (2) Java possiede 44 operatori predefiniti,divisi in 4 categorie base: Bitwise (binari su numeri interi) Aritmetici Logici Relazionali

Gli operatori aritmetici Unari ++ incrementa la variabile di 1 -- decrementa la variabile di 1 count =5; Notazione postfissa Notazione prefissa count++; ++count; restituisce 5 e incrementa count incrementa count e restituisce 6; + - * / Divisione per interi se entrambi gli argomenti sono interi e la divisione di numeri in virgola mobile in tutti gli altri casi Binari

Gli operatori relazionali Confrontano i due operandi determinando la relazione che intercorre tra di essi Operatore Risultato == Uguale a != Diverso da > maggiore < minore >= Maggiore o uguale <= Minore o uguale Ai Riferimenti A tutti i tipi primitivi 3=7 Errore di compilazione Attenzione alla differenza 3==7 Restituisce False

Gli operatori Logici o Booleani Eseguono operazioni logiche tra gli operandi Operatore Risultato || OR && AND ! NOT == Uguale a != Non uguale a op1 | | op2 op1 && op2 ! op1 op1 == op2 op1 != op2

Non sono da utilizzare come operatori logici Gli operatori Bitwise Permettono di effettuare operazioni booleane per ciascun bit degli operandi Non sono da utilizzare come operatori logici & | ^ ~ AND OR XOR NOT

Gli operatori di Assegnamento Abbreviazioni delle istruzioni per assegnare o modificare Il valore delle variabili int i = 0; i = i + 2; i += 2; += op1 += op2 op1 = op1 + op2; -= op1 -= op2 op1 = op1 - op2; *= op1 *= op2 op1 = op1 * op2; /= op1 /= op2 op1 = op1 / op2; %= op1 %= op2 op1 = op1 % op2; &= op1 &= op2 op1 = op1 & op2;

L’operatore di CAST Convertire un valore da un tipo ad un altro compatibilità tra i due tipi di dati Il cast (tipo) si applica sia a tipi primitivi (int, char,…) che ad oggetti Esempio: dd = (double) x; converte il valore di x in double int x=3; double d=4.2; double dd; x = (int) d; converte e approssima il valore di d Promozioni da un tipo ad uno più ampio sono permesse implicitamente. Non sono permesse conversioni implicite a tipi più ristretti.