This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
laboratoare:colectii [2019/11/17 16:22] Adriana Draghici [Linkuri utile] |
laboratoare:colectii [2019/11/30 13:44] (current) Florin Mihalache [Resurse] |
||
---|---|---|---|
Line 250: | Line 250: | ||
- (**1p**) Suprascrieți metodele //equals// și //hashCode// în clasa Student (hint: puteți folosi generatorul de cod din IntelliJ). | - (**1p**) Suprascrieți metodele //equals// și //hashCode// în clasa Student (hint: puteți folosi generatorul de cod din IntelliJ). | ||
- (**2p**) Folosiți un //HashMap<Student, LinkedList<String>>//, în care se vor adăuga perechi de tipul (Student, lista de materii pe care le are studentul respectiv), iar apoi afisați conținutul colecției (hint: Map.Entry și entrySet()). | - (**2p**) Folosiți un //HashMap<Student, LinkedList<String>>//, în care se vor adăuga perechi de tipul (Student, lista de materii pe care le are studentul respectiv), iar apoi afisați conținutul colecției (hint: Map.Entry și entrySet()). | ||
- | - (**2p**) Extindeți clasa //LinkedHashSet<Integer>//, cu o clasă în care se vor putea adăuga doar numere pare. Vor fi suprascrise metodele //add// și //addAll//, în așa fel încât să nu fie permise adăugarea de numere impare în colecție. Pentru testare, adăugați numere pare și impare, iar după aceea iterați prin colecție, folosind [[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/util/Iterator.html|Iterator]] (tipizat cu Integer), afișând elementele din colecție. Inlocuiți LinkedHashSet cu HashSet - ce observați cu privire la ordinea de inserare a elementelor? Dar dacă ați înlocui cu TreeSet? | + | - (**2p**) Extindeți clasa //LinkedHashSet<Integer>//, cu o clasă în care se vor putea adăuga doar numere pare. Vor fi suprascrise metodele //add// și //addAll//, în așa fel încât să nu fie permise adăugarea de numere impare în colecție. Pentru testare, adăugați numere pare și impare, iar după aceea iterați prin colecție, folosind [[https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/util/Iterator.html|Iterator]] (tipizat cu Integer) sau folosind forEach, afișând elementele din colecție. Inlocuiți LinkedHashSet cu HashSet - ce observați cu privire la ordinea de inserare a elementelor? Dar dacă ați înlocui cu TreeSet? |
== Resurse == | == Resurse == | ||
* {{:laboratoare:colectii:schelet-lab8-2019.zip|Schelet}} | * {{:laboratoare:colectii:schelet-lab8-2019.zip|Schelet}} | ||
- | * {{:laboratoare:colectii:sol-lab8-2019.zip|Soluție (disponibilă începând cu 30.11)}} | + | * {{:laboratoare:colectii:sol-lab8-2019.zip|Soluție}} |
* [[laboratoare:old-exercises#colectii|Exerciții din alți ani]] | * [[laboratoare:old-exercises#colectii|Exerciții din alți ani]] | ||
== Linkuri utile == | == Linkuri utile == | ||
- | * [https://www.baeldung.com/java-8-streams|Streams]], introduse din Java 8, pot fi folosite și pentru a aplica operații pe colecții: | + | * [[https://www.baeldung.com/java-8-streams|Streams]], introduse din Java 8, pot fi folosite și pentru a aplica operații pe colecții. Nu le folosim momentan la laborator însă le puteți utiliza la teme: |
* [[https://www.geeksforgeeks.org/stream-in-java/|Java streams]] | * [[https://www.geeksforgeeks.org/stream-in-java/|Java streams]] | ||
- | * [[https://www.geeksforgeeks.org/stream-filter-java-examples/| Filter streams examples]] - feature introdus in versiuni mai noi de java, nu este acoperit in laborator, insa este un concept util. | + | * [[https://www.geeksforgeeks.org/stream-filter-java-examples/| Filter streams examples]] |