SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
Corso Base
Maurizio Cozzetto
Lezione 2
APIs
Android Corso Base. Maurizio Cozzetto.
public class Math
double abs(double a) Valore assoluto di a
double max(double a, double b) Il massimo tra due numeri
double pow(double a, double b) Potenza di a elevato b
double sqrt(double a) Radice quadrata di a
double PI Costante pigreco
double E Costante di Nepero e
double random() Numero casuale compreso
tra 0 incluso e 1 escluso
double exp(double a) e elevato a
APIs
Android Corso Base. Maurizio Cozzetto.
public class String
String(String s) Crea la stringa s
int length() Lunghezza della stringa
char charAt(int i) Iesimo carattere
String substring (int i, int j) Caratteri da i incluso a j
escluso
boolean contains(String sub) True se la stringa contiene
sub come sottostringa
int indexOf(String p) Indice della prima
occorrenza di p
String concat(String t) Concatena la stringa con
la stringa t
Boolean equals(String t) True se la stringa contiene
gli stessi caratteri di t
Stringhe (1/2)
Android Corso Base. Maurizio Cozzetto.
String a = “Ciao”;
String b = “Ciao”;
System.out.println(a==b); // cosa da?
System.out.println(a.equals(b)); // cosa da?
Ciaoa
String
Ciaob
String
Stringhe (2/2)
Android Corso Base. Maurizio Cozzetto.
String a = “Ciao”;
String b = “Ciao”;
System.out.println(a==b); // da false
System.out.println(a.equals(b)); // da true
Ciao
String
Ciao
String
a
b
Array di oggetti (1/5)
Android Corso Base. Maurizio Cozzetto.
Gli array sono gestiti dinamicamente
Persona[] persone; // Dichiaro un riferimento a un array
nullpersone
Array di oggetti (2/5)
Android Corso Base. Maurizio Cozzetto.
Gli array sono gestiti dinamicamente
final static int MAX = 3; // MAX è una costante
Persona[] persone; // Dichiaro un riferimento a un array
persone = new Persona[MAX]; // Creo lo spazio in memoria
persone
Persona[]
null
null
null
0
1
2
Array di oggetti (3/5)
Android Corso Base. Maurizio Cozzetto.
Gli array sono gestiti dinamicamente
persone[0] = new Persona(...); // Creo la prima persona
persone
Persona[]
null
null
0
1
2
Persona
Giulio
Rossi
...
Array di oggetti (4/5)
Android Corso Base. Maurizio Cozzetto.
Gli array sono gestiti dinamicamente
persone[0] = new Persona(...); // Creo la prima persona
persone[1] = new Persona(...); // Creo la seconda persona
persone
Persona[]
null
0
1
2
Persona
Giulio
Rossi
...
Persona
Mario
Verdi
...
Array di oggetti (5/5)
Android Corso Base. Maurizio Cozzetto.
E' “complicato” inserire nuovi elementi o
cancellarli!
int[]
2
6
8
10
Dove metto il 4?
int[]
2
6
8
10
Come cancello l'8?
Liste (1/6)
Android Corso Base. Maurizio Cozzetto.
// Dichiaro una lista
LinkedList<Integer> lista = new LinkedList<>(); // JDK 7
// Si può usare anche ArrayList
// ArrayList<Integer> lista = new ArrayList<>();
// La differenza è nelle performance e nel metodo di
// accesso agli elementi
lista
ArrayList<Integer>
Non preoccuparti!
Preparo io lo spazio!
Liste (2/6)
Android Corso Base. Maurizio Cozzetto.
// Inserisco 2 col metodo add()
lista.add(2);
lista
ArrayList<Integer>
2
2 inserito!
Liste (3/6)
Android Corso Base. Maurizio Cozzetto.
// Inserisco 2 col metodo add()
lista.add(2);
lista.add(6); // Poi il 6
lista
ArrayList<Integer>
2
6
6 inserito!
Liste (4/6)
Android Corso Base. Maurizio Cozzetto.
// Inserisco 2 col metodo add()
lista.add(2);
lista.add(6); // Poi il 6
lista.add(4); // Poi il 4
lista
ArrayList<Integer>
2
6
4
4 inserito!
Liste (5/6)
Android Corso Base. Maurizio Cozzetto.
// Voglio togliere il 6 che ha il posto 1
lista
ArrayList<Integer>
2
6
4
Posto 1: valore 6
0
1
2
Liste (6/6)
Android Corso Base. Maurizio Cozzetto.
// Uso il metodo remove
lista.remove(1);
lista
ArrayList<Integer>
2
4
6 rimosso!
0
1
APIs
Android Corso Base. Maurizio Cozzetto.
public class LinkedList
boolean add(E e) Aggiungo l'elemento e
boolean remove(int i) Rimuove l'elemento di
posto i
boolean remove(E e) Rimuove l'elemento e, se
esiste
int size() Numero di elementi della
lista
E get(int i) Restituisce l'elemento di
posto i e non lo cancella
void add(int i, E e) Aggiunge l'elemento e
nella posizione i
boolean contains(E e) Restituisce true se
l'elemento e è contenuto
nella lista
Corso Base
Maurizio Cozzetto
5 minuti di pausa

Contenu connexe

Similaire à Java lezione2 (20)

Java lezione1
Java lezione1Java lezione1
Java lezione1
 
Esercitazione 3 (14 marzo 2012)
Esercitazione 3 (14 marzo 2012)Esercitazione 3 (14 marzo 2012)
Esercitazione 3 (14 marzo 2012)
 
Dal c a Java (3/3)
Dal c a Java (3/3)Dal c a Java (3/3)
Dal c a Java (3/3)
 
What's new in C# 7
What's new in C# 7What's new in C# 7
What's new in C# 7
 
What is new in C# 2018
What is new in C# 2018What is new in C# 2018
What is new in C# 2018
 
8 Algoritmi
8   Algoritmi8   Algoritmi
8 Algoritmi
 
Array
ArrayArray
Array
 
Riepilogo Java C/C++
Riepilogo Java C/C++Riepilogo Java C/C++
Riepilogo Java C/C++
 
Quinta lezione android
Quinta lezione androidQuinta lezione android
Quinta lezione android
 
Eserc v del 26 marzo 2012
 Eserc v del 26 marzo 2012 Eserc v del 26 marzo 2012
Eserc v del 26 marzo 2012
 
Lists (Java Collections)
Lists (Java Collections)Lists (Java Collections)
Lists (Java Collections)
 
Soluzione esame a del 13 giugno 2012
Soluzione esame a del 13 giugno 2012Soluzione esame a del 13 giugno 2012
Soluzione esame a del 13 giugno 2012
 
La Grafica Con Java
La Grafica Con JavaLa Grafica Con Java
La Grafica Con Java
 
Lezione02
Lezione02Lezione02
Lezione02
 
Lezione02
Lezione02Lezione02
Lezione02
 
Acadevmy - TypeScript Overview
Acadevmy - TypeScript OverviewAcadevmy - TypeScript Overview
Acadevmy - TypeScript Overview
 
Corso python 2020 - Lezione 1
Corso python 2020 - Lezione 1Corso python 2020 - Lezione 1
Corso python 2020 - Lezione 1
 
Vogliamo programmatori stupidi e pigri!
Vogliamo programmatori stupidi e pigri!Vogliamo programmatori stupidi e pigri!
Vogliamo programmatori stupidi e pigri!
 
R Vectors
R VectorsR Vectors
R Vectors
 
Java5
Java5Java5
Java5
 

Java lezione2

  • 2. APIs Android Corso Base. Maurizio Cozzetto. public class Math double abs(double a) Valore assoluto di a double max(double a, double b) Il massimo tra due numeri double pow(double a, double b) Potenza di a elevato b double sqrt(double a) Radice quadrata di a double PI Costante pigreco double E Costante di Nepero e double random() Numero casuale compreso tra 0 incluso e 1 escluso double exp(double a) e elevato a
  • 3. APIs Android Corso Base. Maurizio Cozzetto. public class String String(String s) Crea la stringa s int length() Lunghezza della stringa char charAt(int i) Iesimo carattere String substring (int i, int j) Caratteri da i incluso a j escluso boolean contains(String sub) True se la stringa contiene sub come sottostringa int indexOf(String p) Indice della prima occorrenza di p String concat(String t) Concatena la stringa con la stringa t Boolean equals(String t) True se la stringa contiene gli stessi caratteri di t
  • 4. Stringhe (1/2) Android Corso Base. Maurizio Cozzetto. String a = “Ciao”; String b = “Ciao”; System.out.println(a==b); // cosa da? System.out.println(a.equals(b)); // cosa da? Ciaoa String Ciaob String
  • 5. Stringhe (2/2) Android Corso Base. Maurizio Cozzetto. String a = “Ciao”; String b = “Ciao”; System.out.println(a==b); // da false System.out.println(a.equals(b)); // da true Ciao String Ciao String a b
  • 6. Array di oggetti (1/5) Android Corso Base. Maurizio Cozzetto. Gli array sono gestiti dinamicamente Persona[] persone; // Dichiaro un riferimento a un array nullpersone
  • 7. Array di oggetti (2/5) Android Corso Base. Maurizio Cozzetto. Gli array sono gestiti dinamicamente final static int MAX = 3; // MAX è una costante Persona[] persone; // Dichiaro un riferimento a un array persone = new Persona[MAX]; // Creo lo spazio in memoria persone Persona[] null null null 0 1 2
  • 8. Array di oggetti (3/5) Android Corso Base. Maurizio Cozzetto. Gli array sono gestiti dinamicamente persone[0] = new Persona(...); // Creo la prima persona persone Persona[] null null 0 1 2 Persona Giulio Rossi ...
  • 9. Array di oggetti (4/5) Android Corso Base. Maurizio Cozzetto. Gli array sono gestiti dinamicamente persone[0] = new Persona(...); // Creo la prima persona persone[1] = new Persona(...); // Creo la seconda persona persone Persona[] null 0 1 2 Persona Giulio Rossi ... Persona Mario Verdi ...
  • 10. Array di oggetti (5/5) Android Corso Base. Maurizio Cozzetto. E' “complicato” inserire nuovi elementi o cancellarli! int[] 2 6 8 10 Dove metto il 4? int[] 2 6 8 10 Come cancello l'8?
  • 11. Liste (1/6) Android Corso Base. Maurizio Cozzetto. // Dichiaro una lista LinkedList<Integer> lista = new LinkedList<>(); // JDK 7 // Si può usare anche ArrayList // ArrayList<Integer> lista = new ArrayList<>(); // La differenza è nelle performance e nel metodo di // accesso agli elementi lista ArrayList<Integer> Non preoccuparti! Preparo io lo spazio!
  • 12. Liste (2/6) Android Corso Base. Maurizio Cozzetto. // Inserisco 2 col metodo add() lista.add(2); lista ArrayList<Integer> 2 2 inserito!
  • 13. Liste (3/6) Android Corso Base. Maurizio Cozzetto. // Inserisco 2 col metodo add() lista.add(2); lista.add(6); // Poi il 6 lista ArrayList<Integer> 2 6 6 inserito!
  • 14. Liste (4/6) Android Corso Base. Maurizio Cozzetto. // Inserisco 2 col metodo add() lista.add(2); lista.add(6); // Poi il 6 lista.add(4); // Poi il 4 lista ArrayList<Integer> 2 6 4 4 inserito!
  • 15. Liste (5/6) Android Corso Base. Maurizio Cozzetto. // Voglio togliere il 6 che ha il posto 1 lista ArrayList<Integer> 2 6 4 Posto 1: valore 6 0 1 2
  • 16. Liste (6/6) Android Corso Base. Maurizio Cozzetto. // Uso il metodo remove lista.remove(1); lista ArrayList<Integer> 2 4 6 rimosso! 0 1
  • 17. APIs Android Corso Base. Maurizio Cozzetto. public class LinkedList boolean add(E e) Aggiungo l'elemento e boolean remove(int i) Rimuove l'elemento di posto i boolean remove(E e) Rimuove l'elemento e, se esiste int size() Numero di elementi della lista E get(int i) Restituisce l'elemento di posto i e non lo cancella void add(int i, E e) Aggiunge l'elemento e nella posizione i boolean contains(E e) Restituisce true se l'elemento e è contenuto nella lista