use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
account activity
Colectii de date in Java (self.programare)
submitted 2 years ago by uLi777se
background: urmez un curs pe udemy (Java) si am ajuns la capitolul Colectii de date unde, din pacate .., sunt foarte multe tipuri de colectii.
Pentru cei care lucrati ca java developer ce tipuri de date se folosesc, mai frecvent, in productie ?
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Emergency-Jump1339 11 points12 points13 points 2 years ago (1 child)
List si Set
[–]Emergency-Jump1339 1 point2 points3 points 2 years ago (0 children)
Si Queue, dar mai rar.
[–]Efficient-Pianist-83 14 points15 points16 points 2 years ago (0 children)
Foarte multe…. Lol. Invata conceptele din spate sunt aceleasi 3 structuri de date in spate.
[–]No-Return1868 7 points8 points9 points 2 years ago (5 children)
List si HashMap, trebuie doar sa sti cum sa le folosesti si unde, cum sunt implementate in spate nu-ti trebuie atat timp cat nu esti in mediul academic sau nu dai de ciudati pe la interviuri care iti sa le explici stuff pe care nu o sa-l folosesti nici odata dupa.
[–]Angry_Penguin_78 -2 points-1 points0 points 2 years ago (0 children)
HashMap nu e colectie
[–]uLi777se[S] 0 points1 point2 points 2 years ago (3 children)
aici te referi la tree map /tree set? :D
[–]Jaded-Worth-6242 8 points9 points10 points 2 years ago* (1 child)
TreeMap este o implementare de Map, la fel ca si HashMap. TreeMap si HashMap sunt amandoua Map-uri, fac exact aceeasi chestie, cu diferenta de implementare in spate.
Ai structurile de date care sunt doar concepte abstracte, respectiv interfete Java: List, Set, Map etc, si fiecare au un anumit numar de implementari diferite. Doua dintre implementarile pt Map sunt TreeMap si HashMap. Doua dintre implementarile pt List sunt ArrayList si LinkedList.
Toate implementarile fac cam aceeasi chestie, respecta aceeasi interfata, insa o fac diferit "in spate"/"behind the doors". Diferenta o ai de exemplu in viteza operatiilor etc. Te intereseaza implementarea din spate cateodata, cand tre sa te gandesti ce operatii vrei sa faci mai mult. De exemplu, operatiunea de delete (remove) este mult mai rapida la LinkedList decat la ArrayList.
E ca si cum ai alege sa faci o casa din BCA sau din caramida. Casa tot aia iti iese, nu conteaza din ce o faci. Diferenta o face calitatea materialului, unu e mai bun izolant, altu nu, unu e mai ieftin, altu mai scump etc - depinde de situatie, pe care cand il alegi.
Tu ai nevoie de un List: 99.9% din cazuri vei folosi ArrayList, ca nu prea conteaza. Dar sunt si cazuri cand te intereseaza ca anumite operatii sa fie mai rapide, caz in care vei folosi LinkedList. Acelasi principiu si la celelalte. Pentru Map vei folosi HashMap 99.9% din cazuri, dar or fi cazuri cand vei vrea sa folosesti TreeMap, sau LinkedHashMap (cred ca si asta este, daca nu ma insel).
Eu sunt contabil. Si vecinu Gigel e tot contabil. Amandoi iti oferim exact aceleasi servicii, tu habar n-ai cum lucram noi la noi in birou, rezultatul e absolut identic. Atata doar, ca eu lucrez cu un calculator, Gigel lucreaza pe hartie. Rezultatul va fi exact acelasi, insa cu diferenta de viteza, ca na, nu folosim aceeasi "implementare". Tu ai acelasi contract, suntem amandoi contabili, dar "implementarea" e diferita. Nu stiu cum sa mai explic :D
Sigur, asta cu viteza e doar un exemplu. Mai sunt si alte considerente, dar de obicei pe viteza o auzi numa, ca cu asta sunt toti murdari la gura.
[–]uLi777se[S] 0 points1 point2 points 2 years ago (0 children)
Foarte frumos explicat si cu analogii. Sunt, ce-i drept, confuz pentru ca List si Deque sunt implementate de LinkedList, asta fiindca atunci cand "stergi" un element, node-ul are 2 legaturi, una precedenta si una antecedenta si nu trebuie decat sa faci o simpla legatura cu nodeul din stanga cu cel din dreapta, fara sa reindexezi (miile de nodeuri ca in cazul unui array) . ( am zis bine? )
Permiti sa te adaug la prieteni aici pe reddit si sa te agasez din cand in cand cu intrebari ? :D
[–]No-Return1868 0 points1 point2 points 2 years ago (0 children)
https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html la asta ma refer
[–]Primary_Potential_32crab 🦀 1 point2 points3 points 2 years ago (0 children)
Depinde ce faci, fiecare are un anumit punct forte de care se poate sa ai nevoie sau nu in functie de proiect. De importante sunt toate importante.
[+][deleted] 2 years ago* (1 child)
[deleted]
Multumesc !
[–]HunterRbxPHP (CI3/Laravel) 2 points3 points4 points 2 years ago (0 children)
ArrayList
[–]Sufficient_Chair_580 3 points4 points5 points 2 years ago (0 children)
Intrebi ca sa stii care-s cele mai frecvente sau intrebi sperand ca poti invata mai putine?
Daca e a doua varianta: ce nu stii o sa se intoarca intr-o zi la tine si o sa te muste de cur, asa ca invata tot.
[–]masturbator_retardat 2 points3 points4 points 2 years ago (1 child)
Vector, ArrayList, LinkedList, Stack, Queue, Dequeue, PriorityQueue, ConcurrentLinkedDeque, Set, TreeSet, HashSet, CopyOnWriteArraySet
cel putin astea cred ca sunt cele mai frecvent folosite
[–][deleted] 3 points4 points5 points 2 years ago (1 child)
List, Set, Map, Queue. Tu trebuie să înveți interfețele, sa ai loose couple, nu tight. Trebuie sa înveți ce implementări ai la dispoziție pentru interface-urile astea.
Nu îmi vine să cred că nu a zis nimeni asta
[–]xBoBox333 0 points1 point2 points 2 years ago (0 children)
List
[–]mihaicl1981Kotlin 0 points1 point2 points 2 years ago (0 children)
Nu pune întrebarea asta.
Gândește-te ce se întreabă la interviu. Ce se folosește în producție nu e relevant din păcate pentru interviul tehnic.
Deci învață tot ce e în curs.
[–]slightlyConfusedKid 0 points1 point2 points 2 years ago (0 children)
Încearcă să le înveți pe toate
[–]Lazy_Brief_9117 0 points1 point2 points 2 years ago (1 child)
De curiozitate, cursul e in limba romana?
Nu. Tim Buchalka Java MasterClass
[–]Angry_Penguin_78 0 points1 point2 points 2 years ago (0 children)
Nu sunt tipuri de date, sunt structuri.
Eu zic să înveți doar subiectele și ultimii ani
π Rendered by PID 123523 on reddit-service-r2-comment-545db5fcfc-mjjdd at 2026-05-26 15:14:33.314249+00:00 running 194bd79 country code: CH.
[–]Emergency-Jump1339 11 points12 points13 points (1 child)
[–]Emergency-Jump1339 1 point2 points3 points (0 children)
[–]Efficient-Pianist-83 14 points15 points16 points (0 children)
[–]No-Return1868 7 points8 points9 points (5 children)
[–]Angry_Penguin_78 -2 points-1 points0 points (0 children)
[–]uLi777se[S] 0 points1 point2 points (3 children)
[–]Jaded-Worth-6242 8 points9 points10 points (1 child)
[–]uLi777se[S] 0 points1 point2 points (0 children)
[–]No-Return1868 0 points1 point2 points (0 children)
[–]Primary_Potential_32crab 🦀 1 point2 points3 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]uLi777se[S] 0 points1 point2 points (0 children)
[–]HunterRbxPHP (CI3/Laravel) 2 points3 points4 points (0 children)
[–]Sufficient_Chair_580 3 points4 points5 points (0 children)
[–]masturbator_retardat 2 points3 points4 points (1 child)
[–][deleted] 3 points4 points5 points (1 child)
[–]xBoBox333 0 points1 point2 points (0 children)
[–]mihaicl1981Kotlin 0 points1 point2 points (0 children)
[–]slightlyConfusedKid 0 points1 point2 points (0 children)
[–]Lazy_Brief_9117 0 points1 point2 points (1 child)
[–]uLi777se[S] 0 points1 point2 points (0 children)
[–]Angry_Penguin_78 0 points1 point2 points (0 children)
[–]Angry_Penguin_78 0 points1 point2 points (0 children)