



Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Un riassunto di programmazione in Java, con spiegazioni su vari argomenti come operatori, cicli, array, metodi delle stringhe, programmazione ad oggetti e costruttori. Vengono forniti esempi di codice e viene spiegato come utilizzare i vari elementi. Il documento può essere utile come appunti o sintesi del corso per uno studente di informatica o come riferimento per un programmatore alle prime armi.
Tipologia: Schemi e mappe concettuali
1 / 5
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!




Math Class Math.abs() : valore assoluto Math.min() : minimo dei valori Math.max() : massimo dei valori Math.pow(x,y) :potenza (xy) Math.sqrt() : radice quadrata Operatori < minore
maggiore <= minore o uguale = maggiore o uguale == uguale != diverso Operatori logici && AND || OR ! NOT Condizioni If (){…] If (){…} Else (){…} ElseIf Switch (alternativa all’If, Elseif) Switch(caso1) { case caso1 : / break case caso2 : / break case caso 3 : / break … (se poi non accade nulla) default : … Ciclo While / Do-While while(condizione) { operazioni varie }; do { operazioni varie } while (condizione); Cicli For e Enhanced For for (variabile ; condizione ; incremento) {… …} For (…) { if (condizione2) break ; (o continue; e salta il numero) } Array int[] nomearray = {…} (se so già che elementi metterci) int[] nomearray = new int[n] (se voglio creare un array di grandezza x senza elementi) (per inserire gli elementi dopo dovrò dire : nomearray[0] = 1 nomearray[1] = 2 … fino ad n ) grandezza del vettore nomearray.length ciclo for per gli array for(int i=0 ; i<nomearray.length ; i++) {…} ciclo for each per gli array for(int singoloelemento : nomearray) {…} Metodi delle Stringhe Equals boolean risultato = nomeStringa.equals(“qualcosa”); EqualsIgnoreCase Boolean risultato = nomeStringa.equalsIgnoreCase(“qual cosa”); (In questo caso ignora l’uguaglianza ai fini del booleano) Length nome.lenght (lunghezza di stringa nome) nomearray.lenght (lunghezza del vettore) charAt String nome = “Francesco” char risultato = nome.charAt(0); risultato = F char risultato = nome.charAt(1); risultato = r indexOf int risultato = nome.indexOf(lettera); risultato = posizione della lettera isEmpty boolean risultato = nome.isEmpty(); risultato = vero/falso (in base a se la stringa è vuota o no) toUpperCase String risultato = nome.toUppercase() (ridà il nome maiuscolo) toLowerCase (ridà il nome minuscolo) trim Rimuove gli spazi della stringa replace String risultato = nome.replace(lettera1, lettera5); (scambia le lettere)
Metodo static void addizione(int a, int b) { int risultato = a + b;} (Se poi riscrivo la funzione, me la richiama tutta) addizione(5,4); (9) (se la applico a una variabile esterna devo cambiare metodo perché il void non da il return del valore) static int addizione(int a, int b) {int risultato = a + b; return risultato;} Overload Methods Si può utilizzare lo stesso metodo più volte semplicemente cambiando i parametri utilizzati Programmazione Oggetti (OOP) public class Nomeclasse { Tipoattributo1 attributo1 = … Tipoattributo2 attributo2 = … void metodo 1 { …. } void metodo 2 { …. } (le classi si caratterizzano mediante attributi e metodi) OCCORRE richiamare la classe nel main per utilizzarla : Nomeclasse oggetto1 = new Nomeclasse() In questo modo posso richiamare gli attributo o i metodi della classe : oggetto1.attributo oggetto1.metodo (per implementare più oggetti bisogna ricorrere ai costruttori) Costruttori (OOP) public class nomeclasse { String attributo 1; String attributo 2; Boolean attributo3; int attributo 4; Persona(String attributo1, String attributo2, boolean attributo3, int attributo4) { this.attributo1 = attributo this.attributo2 = attributo this.attributo3 = attributo this.attributo4 = attributo } Overloaded Costruttori (OOP) E’ possibile creare più costruttori simili tra di loro ma è necessario variare sempre qualcosa, come il numero di attributo o le tipologie di attributi. In caso contrario darà errore. In questo modo nel Main potrò avere istanze diverse in quanto quantità e tipologie di attributi per istanza: nomeclasse oggetto1 = new Nomeclasse(Attributo1, attributo2) nomeclasse oggetto2 = new Nomeclasse(Attributo1,attribu to2,attributo3) Metodo toString E’ un metodo che tutti gli oggetti hanno. Esso è necessario per stampare a schermo gli attributi e le caratteristiche dell’oggetto e non la sua collocazione public String toString() { String “nome” = this.attributo1 + this.attributo2 + this.attributo 3 … return “nome” (importante) ecc ecc… (per andare a capo : “\n” Array di un oggetto E’ un modo per creare un array con degli oggetti creati precedentemente. Esempio : creazione classe // creazione costruttore // poi… Nomeclasse[ ] nomeclassealsingolare = new Nomeclasse [n del vettore] Nomeclasse oggetto1 = new Nomeclasse(att1,att2,att3…) Nomeclasse oggetto2 = new Nomeclasse(att1,att2,att3…) nomeclassealsingolare[ ] = oggetto1; nomeclassealsingolare[1] = oggetto2; … (Allo stesso modo di prima, posso richiamare i singoli attributi anche se si parla di un vettore)
Questo permette di avere tutto private e di attuare l’incapsulamento solo quando necessario. Interfacce Una classe figlia può avere solo una singola classe genitore, mentre una classe figlia può avere più interfacce o più classi possono condividere la stessa interfaccia. public interface nomeinterfaccia { void.metodo1; (qui non serve inserire il corpo {} ) Così poi posso fare : public class Classe implements nomeinterfaccia { @Override public void metodo1() {…} Nel caso volessi implementare più Interfacce insieme : public class Classe implements Interfaccia1,Interfaccia2 {…} Scanner Per aprire lo scanner : Scanner scanner = new Scanner(System.in) Per chiudere lo scanner : scanner.close() Gestione delle eccezioni Da utilizzare quando si incontrano delle “eccezioni”, non sono errori. Esempio Divisione tra due numeri X = 1 | Y = 0 ECCEZIONE DIVISIONE PER ZERO In questo caso occorre inserire due comandi : try { codice da eseguire } catch(tipologiaEccezione nomeEccezione) { “non puoi dividere per zero”} catch( “” ) {“non puoi inserire una stringa} (tipologiaEccezione viene scritta da Intellij quando da errore) (più generico = catch(Exception e) {…} Se vogliamo concludere la lista di possibili eccezioni occorre dire : finally { … } Casting dei valori Cambiamento della tipologia di dato, ci sono due casting, implicito ed esplicito. Implicito : quando si passa da un tipo più ristretto ad uno più ampio Esplicito : quando si passa da un tipo di dato più ampio ad uno più ristretto (bisogna anteporre tra parentesi il tipo di nuovo dato). int x = (double) 9.5 (9.5) int x = (int) 9.5 (9) Data e ora LocalDate x = LocalDate.now() (data corrente) LocalTime x = LocalTime.now() (tempo corrente) LocalDateTime x = LocalDateTime.now() (data e ora corrente) Per cambiare l’estetica dell’output occorre : DateTimeFormatter format = DateTimeFormatter.ofPattern( “dd-MM-yyyy”) Altro : dd/MM/yyyy MMM = nome del mese MMMM = mese per intero Hashmap ESEMPIO HashMap<String,String> capitali = new HashMap<String,String>() ; capitali.put(“Italia”,”Roma”) capitali.put(“Inghilterra”,”Lon dra”) capitali.put(“Russia”,”Mosca”) … capitali.remove(“Russia”,”Mos ca”) capitali.clear(); capitali.get(“Italia”)
Print = “Roma”. Arraylist Sono degli array ridimensionabili Creare un arraylist ArrayList