Forum » Programiranje » [java] ArrayList, String[]
[java] ArrayList, String[]
icurk ::
Pozdravljeni,
zanime me, kako lahko najlažje naredim naslednje. Imam string array z elementi recimo {"1", "2", "3", "4", "5"} ter arraylist z elementi{"2", "3"}.
Kar bi rad naredil je, da bi iz string arraya izbrisal elemente, ki so v arraylist. Torej v mojem primeru bi rad dobil ven string array z elementi {"1", "4", "5"}.
zanime me, kako lahko najlažje naredim naslednje. Imam string array z elementi recimo {"1", "2", "3", "4", "5"} ter arraylist z elementi{"2", "3"}.
Kar bi rad naredil je, da bi iz string arraya izbrisal elemente, ki so v arraylist. Torej v mojem primeru bi rad dobil ven string array z elementi {"1", "4", "5"}.
Arto ::
Naredi nov arraylist, pejt s for zanko čez string array in dodajaj elemente, ki jih ni v {"2","3"} v svoj novi arraylist (mislim, da imaš metodo contains()). Ko končaš lahko izvedeš še .toArray() na novem arraylistu, če hočeš array.
icurk ::
Naredil sem naslednje in se mi aplikacija ustavi... Sem šel debugat in je pokazalo, da je i že v prvem obhod zanke 4 (allBooks.length vrne 4 v mojem primeru). Zakaj to?
int i = 0; ArrayList<String> missingBooks = new ArrayList<String>(); for (i = 0; i < allBooks.length; i++);{ if (!books.contains(allBooks[i])){ missingBooks.add(allBooks[i]); } }
kunigunda ::
ArrayList as = new ArrayList(Arrays.asList("A","B","C","D")) ;
ArrayList ad = new ArrayList(Arrays.asList("B","C")) ;
as.removeAll(ad) ;
ti bo zbrisal B in C iz 'as' arraylista.
ArrayList ad = new ArrayList(Arrays.asList("B","C")) ;
as.removeAll(ad) ;
ti bo zbrisal B in C iz 'as' arraylista.
icurk ::
Ze ze, sam js mam en String array, pa tud vrnit moram string array.
Arraylist sem ze dobil, taksnega kot ga zelim, samo v tabelo stringov mi ga noce pretvorit...
Arraylist sem ze dobil, taksnega kot ga zelim, samo v tabelo stringov mi ga noce pretvorit...
Arto ::
Sej ga lahko prov s for zanko ane.
String[] returnArray = new String[TvojArrayList.size()]; for(int i=0; i<returnArray.length; i++){ returnArray[i] = TvojArrayList.get(i) // Tole nisem čis ziher kako je funkcija za element na indeksu } return returnArray;
kunigunda ::
Object books[]=as.toArray() ;
Se cela koda:
String ss[]={"A","B","C","D"};
String dd[]={"B","C"};
ArrayList as = new ArrayListArrays.asList(ss)) ;
ArrayList ad = new ArrayList(Arrays.asList(dd)) ;
as.removeAll(ad);
Object s[]=as.toArray() ;
Ceprov ne vem zakaj ne uporabljas Collection objektov namesto arrayov.
Se cela koda:
String ss[]={"A","B","C","D"};
String dd[]={"B","C"};
ArrayList as = new ArrayListArrays.asList(ss)) ;
ArrayList ad = new ArrayList(Arrays.asList(dd)) ;
as.removeAll(ad);
Object s[]=as.toArray() ;
Ceprov ne vem zakaj ne uporabljas Collection objektov namesto arrayov.
Zgodovina sprememb…
- spremenilo: kunigunda ()
icurk ::
Collectionov ne uporabljam, ker sem bolj zacetnik v javi in jih nisem poznal. Si jih bom pa pogledal, ker sem malo pogooglal in naj bi bli kar uporabni.
golobich ::
String[] vrni = new String[missingBooks.size()]; missingBooks.toArray(vrni); return vrni;
Tale del kode ti vrne tabelo tipa String.
Lp, golobich
icurk ::
No hvala za odgovor ampak sem tezavo ze resil. Metoda toArray mi ni delala, ker velikost tabele stringov ni bila dolocena.
icurk ::
Ma ne nebom, samo v diplomo :) pisem eno aplikacijo za androida, ampak bo ta n zelo majhen, tako da nebo obcutit casovne zahtevnosti algoritma.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [Java - DN] Naključna številaOddelek: Šola | 1374 (903) | nyler |
» | [Java] Integer ali int za ListOddelek: Programiranje | 2291 (1806) | noraguta |
» | Java skeniranje map in podmapOddelek: Programiranje | 1172 (1061) | nightrage |
» | Rekurzija v javi z ArrayListOddelek: Programiranje | 1606 (1449) | marjan_h |
» | Java-random-poljeOddelek: Programiranje | 976 (855) | LeQuack |