This shows you the differences between two versions of the page.
|
poo:laboratoare:08 [2022/11/24 13:07] carmen.odubasteanu [ATENTIE! Se vor folosi tipuri generice in toate problemele!] |
poo:laboratoare:08 [2025/11/24 22:49] (current) george.tudor1906 [ATENTIE! Se vor folosi tipuri generice in toate problemele!] |
||
|---|---|---|---|
| Line 68: | Line 68: | ||
| În clasa **//LinkedList//** se vor defini: | În clasa **//LinkedList//** se vor defini: | ||
| * o clasă **//generica//** internă privată statică **//Node//** | * o clasă **//generica//** internă privată statică **//Node//** | ||
| - | private static class Node<T> | + | <code> private static class Node<T> </code> |
| care conține două referințe: una pentru valoarea pe care o reține nodul și una pentru nodul următor din listă; și doi constructori: unul cu doi parametri (valoarea și nodul următor) și unul cu un parametru (valoarea) - va atribui valoarea null nodului următor; | care conține două referințe: una pentru valoarea pe care o reține nodul și una pentru nodul următor din listă; și doi constructori: unul cu doi parametri (valoarea și nodul următor) și unul cu un parametru (valoarea) - va atribui valoarea null nodului următor; | ||
| * două elemente de tip **//Node//**, reprezentând primul și respectiv ultimul element din listă; | * două elemente de tip **//Node//**, reprezentând primul și respectiv ultimul element din listă; | ||
| Line 115: | Line 115: | ||
| </code> | </code> | ||
| </note> | </note> | ||
| + | |||
| + | === Problema 5 === | ||
| + | |||
| + | Realizați un program pentru gestionarea inventarului unui magazin. Definiți clasa Magazin care conține un HashMap<String, Produs> în care cheia este codul produsului și valoarea este obiectul Produs. Clasa internă Produs va avea atributele: nume (String), preț vechi (double), preț nou (double), stoc (int), redus (boolean) și un constructor care validează datele (nume nenul și nevid, preț ≥ 0, stoc ≥ 0). Se va defini și metoda toString(). | ||
| + | |||
| + | Clasa Magazin trebuie să pună la dispoziție metode pentru adăugarea produselor și pentru aplicarea unei reduceri de 15% produselor cu stoc sub 50. Programul va afișa toate prețurile cu două zecimale, rotunjite corespunzător. | ||
| + | |||
| + | Testați implementarea în main cu minim 3 produse. | ||
| + | |||
| + | <code> | ||
| + | public void adaugaProdus(String cod, String nume, double pret, int stoc); | ||
| + | public void aplicaReduceriStocMic(); | ||
| + | public void afiseazaInventar(); | ||
| + | </code> | ||
| + | |||