vuoi
o PayPal
tutte le volte che vuoi
ADT e Algoritmi
(SEQUENZIALE)stack<T> ADT pila: inserimento come LIFO
(SEQUENZIALE e “ADATTATORE”)queue<T> ADT coda inserimento come FIFO
(SEQUENZIALE e “ADATTATORE”)set<T> ADT insieme (ordine e duplicazione noncontano) – (ASSOCIATIVO)
(SEQUENZIALE e “ADATTATORE”)multiset<T> ADT multi-insieme (ordine e duplicazionecontano) – (ASSOCIATIVO)
(SEQUENZIALE e “ADATTATORE”)map<T1, T2> ADT tabella – (ASSOCIATIVO)
Algoritmi:
N.B.: aggiunta tramite #include <algorithm>
sort Ordinamento di una determinatasequenza di un contenitore
merge Unisce due sequenze ordinate di uncontenitore
reverse Inverte l’ordine degli elementi
partition Suddivide gli elementi di un contenitorein due sequenze disgiunte secondo unpreciso criterio
swap( T x, T y) Scambia i valori tra i due oggetti
Operazioni predefinite sui puntatori
T* nome Dichiara una variabile puntatore di tipoT identificata con nome (non è presentealcuna operazione di binding)
T* nome = new T( T val) Inizializza una variabile puntatore di
tipoT ad un valore di tipo T tramite l'operatore new
T* nome = NULL
La variabile punta a NULL, ovvero niente. Se precedentemente puntava a qualcosa, quella area di memoria diventa garbage, e non è più utilizzabile né recuperabile.
*nome Accede al valore puntato da nome tramite l'operatore di dereferenziazione
delete nome Dealloca l'area di memoria puntata da nome e la rende riutilizzabile.
Dichiarazione ADT - Modulo - Oggetto
class nome {…} Dichiara una classe nome
Regole di Scope:
private: Il campo e/o la/le funzione/i sottostanti sono visibili solo all'interno della classe in cui si dichiara
public: Il campo e/o la/le funzione/i sottostanti sono accessibili sia dentro che fuori la classe in cui si dichiara
Costruttore:
nome(){…} All'esterno della classe, si può dichiarare quest'ultima senza parametri in entrata
nome( T n , … T n ){…} All'esterno della classe, si può dichiarare
quest’ultima con n parametri in entrata
Costruttore di copia:
nome( const& nome copia){..}
All’esterno della classe, è possibile dichiarare quest’ultima e porre l’oggetto creato uguale ad un altro, con operazioni di copia della classe ridefinite opportunamente
Distruttore:
~nome(){…}
All’esterno della classe, una volta finita la funzione che dichiara l’oggetto, quest’ultimo viene distrutto con operazioni ridefinite opportunamente che vengono eseguite dal distruttore
Ereditarietà:
class A{…}
Crea una classe A, e genera una classe B
class B : public A{…}
sottoclasse di A (in particolare, B is_a A)
Java
Funzioni predefinite di libreria
Java.lang.*:
Integer:
Integer x = new Integer( n)
Crea un Integer x tramite l’operatore new con valore n.intValue()
Restituisce il valore di tipo int tramite unboxing
equals( Integer n)
Restituisce un valore booleano a seconda se l’Intero è equivalente ad n.toString()
il valore dell'Integer comeString.parseInt( String s)
Restituisce la String s come Integer.MAX_VALUE
Restituisce il valore massimo rappresentabile (2^31 -1).MIN_VALUE
Restituisce il valore minimo rappresentabile (-2^31).Float:
Float x = new Float( n)
Crea un Float x tramite l'operatore new
con valore n.floatValue()
Restituisce il valore di tipo float tramite unboxing.equals( Float n)
Restituisce un valore booleano a seconda se il Float è equivalente a n.toString()
Restituisce il valore del Float come String.parseFloat( String s)
Restituisce la String come Float.MAX_VALUE
Restituisce il Float massimo rappresentabile.MIN_VALUE
Restituisce il Float minimo rappresentabile.Double:
Double x = new Double( n)
Crea un Double x tramite l'operatore new
con valore n.doubleValue()
Restituisce il valore di tipo double tramite unboxing.equals( Double n)
Restituisce un valore booleano a seconda se il Double è equivalente a n.toString()
Restituisce il valore del Double come String.comeString.parseFloat( String s) Restituisce la String come Double.MAX_VALUE
Restituisce il Double
massimo rappresentabile.MIN_VALUE
Restituisce il Double
minimo rappresentabile.Character:Character c = new Character (n) Crea un nuovo carattere c tramite l'operatore new con valore n.
toUpperCase( Character c)
Restituisce il carattere c come carattere maiuscolo.equals( Character n)
Restituisce un valore booleano a seconda che Character sia equivalente a n.String: String s = new String() Crea una String di nome s tramite l'operatore new vuota.
String s = new String("c") Crea una String di nome s tramite l'operatore new con valore "c".
length()
Restituisce la lunghezza della String come int.charAt( int x)
Restituisce il carattere all'indice x della String.equals( String n)
Restituisce un valore booleano a seconda che la String sia equivalente o meno a n.indexOf( char n)
Restituisce l'indice a cui si trova il Char n (in caso di ripetizioni, restituisce il primo indice).Il metodo substring(int i, int f)
restituisce una String contenuta nella String chiamante che ha come inizio l'indice i
e come fine l'indice f
della String chiamante.
Il metodo nextLine()
legge una stringa intera da un input e la assegna alla String chiamante.
Il metodo System.in
utilizza lo standard input come InputStream.
Il metodo System.out
utilizza lo standard output come PrintStream.
Il metodo InputStream.close()
chiude lo stream di input.
Il metodo PrintStream.print(T e)
stampa tramite Printstream il valore della valutazione di e.toString()
.
Il metodo PrintStream.println(T e)
stampa tramite Printstream il valore della valutazione di e.toString()
e va a capo.
La classe Object
è la classe base da cui tutte le altre classi ereditano. È l'unica superclasse che non è sottoclasse di nessun'altra classe.
Il metodo clone()
esegue una copia parzialmente profonda dell'oggetto.
Il reference di reference è...
copiato comereference, non come valore del secondoreference). È possibile ridefinire ilmetodo per ottenere una copiaprofonda assoluta.8