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

Java lezione2

  • 1.
  • 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 CorsoBase. 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 CorsoBase. 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 CorsoBase. 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 CorsoBase. Maurizio Cozzetto. // Inserisco 2 col metodo add() lista.add(2); lista ArrayList<Integer> 2 2 inserito!
  • 13.
    Liste (3/6) Android CorsoBase. 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 CorsoBase. 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 CorsoBase. 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 CorsoBase. 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
  • 18.