Skip to content

Instantly share code, notes, and snippets.

@arnaudgeiser
Created April 11, 2022 12:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save arnaudgeiser/f0a49b8417439a2eb2fff509de20ad41 to your computer and use it in GitHub Desktop.
Save arnaudgeiser/f0a49b8417439a2eb2fff509de20ad41 to your computer and use it in GitHub Desktop.
Maps and classes
class Etudiant {
public final String nom;
public final String prenom;
public final double note1;
public final double note2;
public final double note3;
public Etudiant(String nom, String prenom, double note1, double note2, double note3) {
this.nom = nom;
this.prenom = prenom;
this.note1 = note1;
this.note2 = note2;
this.note3 = note3;
}
}
class Note {
public final double note;
public Note(double note) {
this.note = note;
}
}
class AutreEtudiant {
public final String nom;
public final String prenom;
public final List<Note> notes;
public AutreEtudiant(String nom, String prenom, List<Note> notes) {
this.nom = nom;
this.prenom = prenom;
this.notes = notes;
}
}
Map<String, Object> etudiant = Map.of("nom", "Geiser", "prenom", "Arnaud", "note1",
3.5, "note2", 5, "note3", 6);
etudiant.get("nom"); // => Geiser
etudiant.get("prenom"); // => Arnaud
etudiant.get("note1"); // => 3.5
etudiant.get("note2"); // => 5
etudiant.get("noImmatriculation"); // => null
Etudiant etudiant2 = new Etudiant("Geiser", "Arnaud", 3.5, 5, 6);
etudiant2.nom; // => Geiser
etudiant2.prenom; // => Arnaud
etudiant2.note1; // => 3.5
etudiant2.note2; // => 5
etudiant2.noImmatriculation; // => not compiling
AutreEtudiant autreEtudiant = new AutreEtudiant("Geiser", "Arnaud", List.of(new Note(3.5), new Note(5), new Note(6)));
autreEtudiant.nom; // => Geiser
autreEtudiant.prenom; // => Arnaud
autreEtudiant.notes.get(0); // => 3.5
autreEtudiant.notes.get(1); // => 5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment