Vai al contenuto
eLearner.app

Corso Java

Cheatsheet

Un riferimento veloce — la sintassi essenziale di Java moderno su una pagina sola. Usa Ctrl/Cmd + P per stamparla.

Java · Cheatsheet — eLearner.app

Variabili e tipi

  • Dichiarazione e Assegnazione

    int age = 25;
    double price = 19.99;
    boolean isActive = true;
    char grade = 'A';
    String name = "Alice";

    Java è fortemente tipizzato: ogni variabile deve dichiarare esplicitamente il suo tipo.

  • Casting e Conversioni

    double d = 9.8;
    int i = (int) d;               // 9 (narrowing cast)
    int num = Integer.parseInt("42");
    String s = String.valueOf(123);

    Il casting da float/double a int tronca i decimali senza arrotondare.

Stringhe

  • Metodi Comuni

    String s = "Hello";
    int len = s.length();          // 5
    char c = s.charAt(0);          // 'H'
    String sub = s.substring(1, 4); // "ell"
    boolean eq = s.equals("hello");// false
    boolean eqIgnoreCase = s.equalsIgnoreCase("hello"); // true

    Usa sempre il metodo .equals() per confrontare il valore delle stringhe, non l'operatore ==.

  • Concatenazione e Formattazione

    String name = "Bob";
    int age = 30;
    String msg = "Name: " + name + ", Age: " + age;
    String formatted = String.format("Name: %s, Age: %d", name, age);
    System.out.printf("Price: %.2f", 19.99);

Controllo del flusso

  • Branching Condizionale

    if (x > 0) {
        System.out.println("Positive");
    } else if (x < 0) {
        System.out.println("Negative");
    } else {
        System.out.println("Zero");
    }
  • Cicli (for, foreach, while)

    for (int i = 0; i < 5; i++) {
        System.out.println(i);
    }
    
    for (String item : items) {
        System.out.println(item);
    }
    
    while (x > 0) {
        x--;
    }

    Il ciclo foreach (for-each) permette di iterare facilmente su array o collezioni.

Classi e Oggetti (OOP)

  • Classe e Costruttore

    class Person {
        private String name;
        private int age;
    
        public Person(String name, int age) {
            this.name = name;
            this.age = age;
        }
    
        public void introduce() {
            System.out.println("Hello, " + name);
        }
    }

    I membri privati (private) non sono accessibili direttamente dall'esterno della classe.

  • Ereditarietà

    class Dog extends Animal {
        public Dog(String name) {
            super(name); // chiama il costruttore del padre
        }
    
        @Override
        public void makeSound() {
            System.out.println("Woof");
        }
    }

    Usa l'annotazione @Override per indicare esplicitamente la sovrascrittura di un metodo ereditato.

  • Classi Astratte

    abstract class Shape {
        abstract double getArea();
    }
    
    class Circle extends Shape {
        double radius;
        @Override
        double getArea() {
            return Math.PI * radius * radius;
        }
    }

Interfacce e Collezioni

  • Interfacce

    interface Drivable {
        void drive();
    }
    
    class Car implements Drivable {
        @Override
        public void drive() {
            System.out.println("Driving a car");
        }
    }

    Una classe può implementare più interfacce, separandole con virgole.

  • ArrayList (Lista Dinamica)

    import java.util.ArrayList;
    
    ArrayList<String> list = new ArrayList<>();
    list.add("Java");
    list.add("Kotlin");
    String first = list.get(0);    // "Java"
    int size = list.size();        // 2
    list.remove(1);                // Rimuove "Kotlin"

    Gli ArrayList supportano solo tipi oggetto (es. ArrayList<Integer>, non ArrayList<int>).

eLearner.app · Corso Java · cheatsheet generato dai contenuti delle lezioni.