Quadro Posted August 26, 2012 Share Posted August 26, 2012 ArrayList in Java ArrayList reprezinta o forma mai avansata fata de matrici (in java elementele dintr-o matrice sunt considerate obiecte de un anumit tip). Iata diferentele: 1.O matrice obisnuita trebuie sa aiba specificata dimensiunea in momentul crearii. In cazul obiectelor ArrayList, este sufficient sa creezi un obiect de tip ArrayList. De fiecare data este la fel. Nu este nevoie sa stii dinainte cat de mare va fi lista, deoarece aceasta se mareste sau se micsoreaza pe masura ce obiectele sunt adaugate sau scoase din lista. Matrice: new String[2]; //este necesara o dimensiune new ArrayList<String>()[//nu este necesara nici o dimensiune (desi poti sa o specifici daca vrei)[/font] 2. Pentru a adauga un obiect intr-o matrice, trebuie sa-l asociezi cu o pozitie specifica. (un indice intre 0 si un numar egal cu lungimea matricei minus unu) ea[1] = b; //este necesara specificarea unui indice Daca indicele este in afara limitelor matricei (de exemplu, matricea este declarata avand dimensiunea 2 si incerci sa asociezi unei valori indicele 3), este generata o eroare in timpul executiei. In cazul obiectelor ArrayList, poti specifica un indice, folosind metoda, add(unInt, unObiect), sau poti continua sa adaugi elemente cu metoda add(unObiect), iar lista ArrayList continua sa creasca, facand loc pentru noile elemente adaugate.[/font] listaMea.add(b); //nu este necesarea specificarea unui indice[/font] 3.Matricele folosesc o sintaxa specifica nefolosita pentru nimic altceva in Java. In schimb, listele ArrayList sunt obiecte Java obisnuite, asa ca nu au nevoie de o sintaxa speciala. listaMea[1]//parantezele patrate reprezinta o sintaxa speciala, folosita numai pentru matrice 4.Obiectele ArrayList din Java 5.0 sunt parametrizate. Tocmai am spus ca, spre deosebire de matrice, obiectele ArrayList nu o sintaxa speciala. Adevarul este ca au sintaxa speciala, adaugata in Java 5.0 Tiger – tipuri parametrizate. ArrayList<String>//Expresia <String>, cu paranteze unghiulare, este un “parametru de tip”.ArrayList<String> inseamna “o lista de obiecte String”, asa cum ArrayList<Caine> inseamna “o lista de obiecte Caine”. Cateva lucruri pe care le poti face cu obiectele ArrayList: 1.Sa creezi un obiect ArrayList<Ou> listaMeaDeOua = new ArrayList<Ou>(); //in zona heap este creat un nou obiect ArrayList.Este micut deoarece el nu contine nimic. 2.Sa pui ceva in el Ou s = new Ou(); listaMeaDeOua.add(s); //acum obiectul ArrayList creste devenind o “casuta”, in care este pastrat obiectul Ou. 3.Sa aflii cate obiecte contine lista int marime = listaMeaDeOua.size(); //Obiectul ArrayList contine un obiect, asa ca metoda size() returneaza valoarea 1. 4.Sa afli daca lista contine ceva boolean esteCeva = listaMeaDeOua.contains(s); 5.Sa afli unde se gaseste ceva in lista (adica sa afli indicele unui obiect) int idx = listaMeaDeOua.indexOf(b); 6.Sa afli daca lista este vida boolean nimic = listaMeaDeOua.isEmpty(); //lista nu este vida asa ca metoda returneaza valoarea false. 7.Sa scoti ceva din lista listaMeaDeOua.remove(s); Link to comment Share on other sites More sharing options...
Cosman Posted November 11, 2012 Share Posted November 11, 2012 Ms char imi trebuia Link to comment Share on other sites More sharing options...
Recommended Posts