Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Appunti informatica programmazione, Appunti di Elementi di Informatica

Introduzione alla programmazione ad oggetti. Prof Wilma Penzo

Tipologia: Appunti

2019/2020

Caricato il 22/02/2020

giulia-spada-2
giulia-spada-2 🇮🇹

4.6

(5)

11 documenti

1 / 6

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
CAST!
double volume = 3,14 * (double) raggio/cm * (double) raggio/cm * altezza;
(NON mettere fra parentesi raggio/cm)!
ACQUISIRE UNA LINEA DI TESTO (lascio lo spazio tra 2 espressioni)!
tastiera.nextLine();
System.out.println(); —> lascia una riga vuota
INVOCAZIONE DI UN METODO!
nome_oggetto.metodo();
METODI DELLA CLASSE STRING!
L’operatore di uguaglianza == verifica solo se le 2 stringhe sono memorizzate nella stessa area di memoria.!
RESTITUZIONE DI UNA NUOVA STRINGA !
nome = nomeCompleto.substring (0, nomeCompleto.indexOf(“ “));
(spazio escluso)!
CHAR AT + EQUALS IGNORE CASE!
String iniziali = “” + nome.charAt(0) + cognome.charAt(0);
(notare la concatenazione con la stringa vuota, in quanto charAt restituisce un carattere e non una stringa)!
if (attivita.charAt(0) == ‘a’) {
equivalente a !
if (attivita.equalsIgnoreCase(“a”)) {!
Variabile char —> char variabile = tastiera.next().charAt(0);
nome_stringa.charAt(indice)
Res4tuisce6il6cara8ere6che6si6trova6alla6posizione6indice6della6stringa6corrente6nome_stringa.6Gli6
indici6sono6numera46a6par4re6da60
nome_stringa.compareTo(altra_stringa)
Confronta6la6stringa6corrente6nome_stringa6con6altra_stringa6per6individuare6quale6viene6prima6
in6ordine6lessicografico.6L’ordine6lessicografico6corrispondente6all’ordine6alfabe4co6quando6
entrambe6le6stringhe6sono6cos4tuite6solo6da6le8ere6maiuscole6o6solo6da6le8ere6minuscole.6
Res4tuisce6un6numero6nega4vo6se6nome_stringa6precede6altra_stringa,6altrimen46un6numero6
posi4vo6
nome_stringa.concat(altra_stringa)
Res4tuisce6una6nuova6stringa6che6presenta6gli6stessi6cara8eri6della6stringa6nome_stringa/
concatena46con6quelli6in6altra_stringa.6Invece6di6concat6può6essere6u4lizzato6l’operatore6+
nome_stringa.equals(altra_stringa)
Res4tuisce6true6se6la6stringa6corrente6nome_stringa6e6altra_stringa6sono6uguali.6Altrimen46
res4tuisce6false
nome_stringa.equalsIgnoreCase(altra_stringa)
Si6comporta6come6il6metodo6equqls,6ma6considera6uguali6le6le8ere6maiuscole6e6minuscole6della6
stringa6
nome_stringa.indexOf(altra_stringa)
Res4tuisce6l’indice6della6prima6occorrenza6della6so8ostringa6altra_stringa6nella6stringa6corrente6
nome_stringa.6Res4tuisce6-16se6la6so8ostringa6altra_stringa6non6compare.6Gli6indici6sono6
numera46a6par4re6da60
nome_stringa.lastIndexOf(altra_stringa)
Res4tuisce6l’indice6dell’ul4ma6occorrenza6della6so8ostringa6altra_stringa6all’interno6della6stringa6
corrente6nome_stringa.6Res4tuisce6-16se6la6so8ostringa6altra_stringa6non6compare.6Gli6indici6
sono6numera46a6par4re6da60
nome_stringa.length(6)
Res4tuisce6la6lunghezza6della6stringa6corrente6nome_stringa
nome_stringa.toLowerCase(6)
Res4tuisce6una6nuova6stringa6che6presenta6gli6stessi6cara8eri6della6stringa6nome_stringa,6ma6in6
cui6tu8e6le6le8ere6maiuscole6sono6state6sos4tuite6con6le6minuscole6corrisponden46
nome_stringa.toUpperCase(6)
Res4tuisce6una6nuova6stringa6che6presenta6gli6stessi6cara8eri6della6stringa6nome_stringa,6ma6in6
cui6tu8e6le6le8ere6minuscole6sono6state6sos4tuite6con6le6maiuscole6corrisponden46
nome_stringa.replace(vecchio_cara8ere,6
nuovo_cara8ere)
Res4tuisce6una6nuova6stringa6che6presenta6gli6stessi6cara8eri6della6stringa6nome_stringa,6ma6in6
cui6tu8e6le6occorrenze6del6cara8ere6vecchio_cara2ere6sono6state6sos4tuite6dal6cara8ere6
nuovo_cara2ere6
nome_stringa.substring(inizio)
Res4tuisce6una6nuova6stringa6che6presenta6gli6stessi6cara8eri6della6so8ostringa6che6inizia6
all’indice6inizio6della6stringa6nome_stringa6fino6alla6fine6della6stringa.6Gli6indici6sono6numera46a6
par4re6da60
nome_stringa.substring(inizio,6fine)
Res4tuisce6una6nuova6stringa6che6presenta6gli6stessi6cara8eri6della6so8ostringa6che6inizia6
all’indice6inizio6della6stringa6nome_stringa6fino6all’indice6fine6escluso.6Gli6indici6sono6numera46a6
par4re6da60
pf3
pf4
pf5

Anteprima parziale del testo

Scarica Appunti informatica programmazione e più Appunti in PDF di Elementi di Informatica solo su Docsity!

CAST

double volume = 3,14 * (double) raggio/cm * (double) raggio/cm * altezza; (NON mettere fra parentesi raggio/cm) ACQUISIRE UNA LINEA DI TESTO (lascio lo spazio tra 2 espressioni) tastiera.nextLine(); System.out.println(); —> lascia una riga vuota INVOCAZIONE DI UN METODO nome_oggetto.metodo(); METODI DELLA CLASSE STRING L’operatore di uguaglianza == verifica solo se le 2 stringhe sono memorizzate nella stessa area di memoria. RESTITUZIONE DI UNA NUOVA STRINGA nome = nomeCompleto.substring (0, nomeCompleto.indexOf(“ “)); (spazio escluso) CHAR AT + EQUALS IGNORE CASE String iniziali = “” + nome.charAt(0) + cognome.charAt(0); (notare la concatenazione con la stringa vuota, in quanto charAt restituisce un carattere e non una stringa) if (attivita.charAt(0) == ‘a’) { equivalente a if (attivita.equalsIgnoreCase(“a”)) { Variabile char —> char variabile = tastiera.next().charAt(0); nome_stringa.charAt(indice) Res4tuisce il cara8ere che si trova alla posizione indice della stringa corrente nome_stringa. Gli indici sono numera4 a par4re da 0 nome_stringa.compareTo(altra_stringa) Confronta la stringa corrente nome_stringa con altra_stringa per individuare quale viene prima in ordine lessicografico. L’ordine lessicografico corrispondente all’ordine alfabe4co quando entrambe le stringhe sono cos4tuite solo da le8ere maiuscole o solo da le8ere minuscole. Res4tuisce un numero nega4vo se nome_stringa precede altra_stringa, altrimen4 un numero posi4vo nome_stringa.concat(altra_stringa) Res4tuisce una nuova stringa che presenta gli stessi cara8eri della stringa nome_stringa concatena4 con quelli in altra_stringa. Invece di concat può essere u4lizzato l’operatore + nome_stringa.equals(altra_stringa) Res4tuisce true se la stringa corrente nome_stringa e altra_stringa sono uguali. Altrimen res4tuisce false nome_stringa.equalsIgnoreCase(altra_stringa) Si comporta come il metodo equqls, ma considera uguali le le8ere maiuscole e minuscole della stringa nome_stringa.indexOf(altra_stringa) Res4tuisce l’indice della prima occorrenza della so8ostringa altra_stringa nella stringa corrente nome_stringa. Res4tuisce -1 se la so8ostringa altra_stringa non compare. Gli indici sono numera4 a par4re da 0 nome_stringa.lastIndexOf(altra_stringa) Res4tuisce l’indice dell’ul4ma occorrenza della so8ostringa altra_stringa all’interno della stringa corrente nome_stringa. Res4tuisce -1 se la so8ostringa altra_stringa non compare. Gli indici sono numera4 a par4re da 0 nome_stringa.length( ) Res4tuisce la lunghezza della stringa corrente nome_stringa nome_stringa.toLowerCase( ) Res4tuisce una nuova stringa che presenta gli stessi cara8eri della stringa nome_stringa , ma in cui tu8e le le8ere maiuscole sono state sos4tuite con le minuscole corrisponden nome_stringa.toUpperCase( ) Res4tuisce una nuova stringa che presenta gli stessi cara8eri della stringa nome_stringa , ma in cui tu8e le le8ere minuscole sono state sos4tuite con le maiuscole corrisponden nome_stringa.replace(vecchio_cara8ere, nuovo_cara8ere) Res4tuisce una nuova stringa che presenta gli stessi cara8eri della stringa nome_stringa , ma in cui tu8e le occorrenze del cara8ere vecchio_cara2ere sono state sos4tuite dal cara8ere nuovo_cara2ere nome_stringa.substring(inizio) Res4tuisce una nuova stringa che presenta gli stessi cara8eri della so8ostringa che inizia all’indice inizio della stringa nome_stringa fino alla fine della stringa. Gli indici sono numera4 a par4re da 0 nome_stringa.substring(inizio, fine) Res4tuisce una nuova stringa che presenta gli stessi cara8eri della so8ostringa che inizia all’indice inizio della stringa nome_stringa fino all’indice fine escluso. Gli indici sono numera4 a par4re da 0

CARATTERI DI ESCAPE

METODI DELLA CLASSE SCANNER

OPERATORI DI CONFRONTO

CONDIZIONI

CICLI

  1. while (espressione_booleana) { prima_istruzione … }
  2. do { prima_istruzione … } while (espressione_booleana);
  3. for (inizializzazione; espressione_booleana; aggiornamento) { prima_istruzione … } WHILE Quando si utilizza un valore sentinella per indicare la fine dell’input while (prossimo >= 0) { istruzioni } \” Apice doppio Esempio: System.out.println(“Vuoi continuare? Digita \” Q \” per uscire”); \’ Apice singolo \ \ Backslash \n Nuova linea. Sposta l’output all’inizio della nuova riga \r Carriage return. Sposta l’output all’inizio della riga corrente \t Tab. aggiunge spazi bianchi fino al nuovo punto di tabulazione nome_ogge8o_scanner.next ( ) Res4tuisce un valore String che corrisponde al prossimo input da tas4era fino al primo cara8ere di delimitazione (cara8eri di spaziatura) escluso nome_ogge8o_scanner.nextLine ( ) Legge la parte rimanente della riga corrente e res4tuisce i cara8eri leV come un valore di 4po String. Si no4 che il cara8ere di terminazione d riga /n viene le8o, ma scartato. InfaV non viene incluso nella stringa res4tuita nome_ogge8o_scanner.nextInt ( ) Legge il prossimo input da tas4era come un valore di 4po int nome_ogge8o_scanner.nextDouble ( ) Legge il prossimo input da tas4era come un valore di 4po double nome_ogge8o_scanner.nextBoolean ( ) Legge il prossimo input da tas4era come un valore di 4po boolean. I valori true e false devono essere scriV proprio come true e false Notazione matema4ca Nome Notazione Java “=“ Uguale a “==“ “≠" Diverso da “!=“ “>" Maggiore di > “≥” Maggiore o uguale di >= “<" Minore di < “≤" Minore o uguale di <= And logico: (so8o_espressione_1) && (so8o_espressione_2) È vera solo se entrambe le espressioni sono vere Or logico: (so8o_espressione_1) || (so8o_espressione_2) È vera se espressione 1 è vera o se espressione 2 è vera, oppure se entrambe sono vere Not logico: !espressione_booleana Il valore dell’espressione è l’opposto del valore dell’espressione booleana espressione_booleana: vera se espressione_booleana è falsa; falsa se espressione_booleana è vera

public class CaneDemo { public static void main (String [] args) { Cane balto = new Cane (); —> creazione di un oggetto di tipo Cane balto.setNome (“Balto”); —> fa riferimento alla variabile di istanza nome balto.setRazza (“Husky”); balto.scriviOutput(); —> invocazione del metodo usando l’oggetto balto } (le variabili di istanza di solito sono private e per accedere ad esse si utilizzano i metodi di accesso get e set) CLASSI == —> verifica se gli indirizzi di memoria sono gli stessi equals —> verifica se gli oggetti sono uguali COSTRUTTORI Creazione oggetto —> Animale pesce = new Animale (); Invoca il costruttore di default Per modificare i valori —> pesce.setAnimale(“Pippo”, 1, 2.6); Creazione oggetto —> Animale pesce = new Animale (“Pippo”, 1, 2.6); Invoca il costruttore completo System.out.println(“Nome:“ + pesce.getNome() + “eta:“ + pesce.getEta() + “peso:“ + pesce.getPeso()); OVERLOAD public class Overload { private static double calcolaMedia (double primo, double secondo) return (primo + secondo) / 2.0; private static double calcolaMedia (double primo, double secondo, double terzo) return (primo + secondo + terzo) / 3.0; private static char calcolaMedia (char primo, char secondo) return (char) (((int) primo + (int) secondo) / 2); } ARRAYLIST import.java.util.ArrayList; ArrayList<tipo_base> variabile = new ArrayList<tipo_base>(capacità); tipo_base —> deve essere un CLASSE Metodi public ArrayList<tipo_base>(int capacitaIniziale) Crea una lista vuota di elementi di tipo tipo_base e con una determinata capacitaIniziale Public ArrayList<tipo_base>() (^) Uguale a quello sopra, la capacità iniziale è 10 Public boolean add(tipo_base nuovoElemento) (^) Inserisce nuovoElemento alla fine di questa lista e incrementa la dimensione della lista di 1 unità Public void add(int indice, tipo_base nuovoElemento) Inserisce nuovoElemento nella posizione indice di questa lista. Per fare spazio all’elemento, sposta gli elementi successivi incrementando il loro indice di 1 unità Public tipo_base get (int indice) (^) Restituisce l’elemento alla posizione indice di questa lista Public tipo_base set(int indice, tipo_base elemento) Sostituisce l’elemento alla posizione indice di questa lista con elemento Public tio_base remove(int indice) (^) Rimuove e restituisce l’elemento alla posizione indice di questa lista. Sposta gli elementi che sono nelle posizioni successive Public boolean remove(Object elemento) (^) Rimuove la prima occorrenza di elemento in questa lista e sposta gli elementi successivi decrementando il loro indice di 1 unità Public void clear() (^) Rimuove tutti gli elementi da questa lista Public int size() (^) Restituisce il numero di elementi di questa lista Public boolean contains(Object elemento) (^) Restituisce vero se elemento è in questa lista, altrimenti restituisce falso Public int indexOf(Object elemento) (^) Restituisce l’indice della prima occorrenza di elemento in questa lista. Restituisce -1 se l’elemento non è nella lista Public boolean isEmpty() (^) Restituisce vero se questa lista è vuota; altrimenti falso

1) DEFINIZIONE VARIABILI COSTANTI

public static final int NOME_VARIABILE = 3.1; (fuori dal public static void main)

  1. DEFINIZIONE VARIABILI DI ISTANZA (caratterizzano lo stato di ogni oggetto) private int nome_variabile; private List <tipo_classe> nome_variabile; —> lista private tipo_base[] nome_variabile; -> vettore
  2. DEFINIZIONE VARIABILI DI CLASSE (appartengono alla classe, sono condivise da tutti gli oggetti) private static int nome_variabile = 3; private static int progressivo = 0; —> più di 1 progressivo se il codice è di 2 tipi
  3. COSTRUTTORI (nome costruttore = nome classe) Di default (NON mettere codice automatico, punti accumulati) public Animale (){ this(“”, 0, new ArrayList <tipo_classe> (), new tipo_base[dimensione], “gg/mm/aaaa”) (stringa - double, int - lista - vettore - data) Con un parametro public Animale (String nome) { this (nome, 0 , 0); } Completo public Animale (String nome, int eta, double peso) { this.nome = nome; this.eta = eta; this.peso = peso; }
  4. METODI GETTER E SETTER (da fare solo con le variabili di istanza utili, che serviranno in altre classi)
  5. METODI DI ISTANZA public tipo_output nome_metodo (parametri_input) { Metodo per generare il codice (con progressivo e data) private String generaCodice (String data) { String giorno = data.substring(0, data.indexOf(“/“)); String mese = data.substring(data.indexOf(“/“)+1, data.lastIndexOf(“/“)); String anno = data.substring(data.lastIndexOf(“/“)+1); return “#” + (++progressivo) + “-“ + anno + “-“ + mese + “-“ + giorno; Metodo toString public String toString() { String s = “”; s += “Codice: “ + codice + “\n”; s += “Data: “ + data + “\n”; return s; } Metodo che restituisce una lista public List <tipo_classe> nome_metodo (parametri) { List <tipo_classe> nome_lista = new ArrayList <tipo_classe>(); -> creazione della lista … return nome_lista; } Metodo che restituisce un vettore Public tipo_base nome_metodo (parametri) { tipo_base nome_vettore = null; … return nome_vettore; }
  6. METODI DI CLASSE / STATICI public static void nomeMetodo (parametri){ —> non restituisce un valore, segue solo delle istruzioni public static int nomeMetodo (parametri){ … return espressione; } —> restituisce un valore di tipo int