[ dusanl @ 20.12.2006. 14:29 ] @
Kako da konvertujem element Array liste (znaci objekat) u tip int. Tj. zadatak je: Napuniti kolekciju (ne niz) sa brojevima i prikazati: 1)sve parne elemente 2)da li se neki trazeni element nalazi u kolekciji |
[ dusanl @ 20.12.2006. 14:29 ] @
[ hyle @ 20.12.2006. 14:47 ] @
Pošalji ovde svoj kod gde se vidi kako si probao da rešiš zadatak pa će ti neko pomoći da ispraviš greške.
U kolekciju ćeš stavljati objekte klase Integer, ne možeš koristiti proste tipove kao što je int. [ bgd2500 @ 20.12.2006. 17:29 ] @
Koristi Integer.
[ SluX @ 20.12.2006. 18:59 ] @
Jeste bas i pomogli decku...ali niste bas upravu.
Od jave 1.5, na raspolaganju nam je autoboxing tj: ArrayList<Integer> lista=new ArrayList<Integer>(); lista.add(1); itd.... Autoboxing ti u principu omogucava da ubacujes u listu proste tipove kao int bez explicitnog pretvaranja wrapper klasu kao sto je npr Integer. Posle kad elemente vadis iz liste foreach segmentom npr(pretpostavljam da to znas), koristis Integer-ov metod intValue(), da bi dobio pravu vrednost broja...onda sa njim radi sta ti je volja. Nadam se da je malo pomoglo. [ djalfirevic @ 20.12.2006. 19:19 ] @
I onda na to slux-ovo jos dodas tipa
Code: if (value%2 == 0) { //onda je broj paran i stavljas u neki poseban niz kako bi posle samo izlistao te elemente } i takodje uzimas svaki element i proveravas da li se nalazi u trazenom nizu... OK? [ hyle @ 20.12.2006. 23:01 ] @
Dečko očigledno sluša neki osnovni kurs Jave pa je došao do kolekcija...
Mislim da je za ljude koji imaju taj nivo znanja najkorisnije da sami probaju da reše zadatke koje dobiju i da pitaju tek kada se zaglave sa nekim konkretnim problemom, a ne da se nauče da im neko drugi rešava zadatke. Neka nauči da ubacuje i vadi objekte iz kolekcije, a autoboxing će lako otkriti kada eksplicitno kreiranje objekata počne da ga smara ![]() [ dusanl @ 21.12.2006. 01:40 ] @
Resio sam. Mada imam pitanje: posto hasNext() metoda sa iteratorom pamti poziciju elementa kolekcije, kako da vratim poziciju na nulu, posto recimo ako hocu ponovo da prodjem kroz kolekciju to ne mogu(ne znam kako).
Evo resenja: Code: package javaapplication2; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Iterator; public class Main { public Main() { } public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); int j; int m; ArrayList lista=new ArrayList(); ArrayList parni=new ArrayList(); for(int k=0;k<5;k++){ String unos=br.readLine(); j=Integer.parseInt(unos); lista.add(j); } System.out.println("Lista "+lista); Iterator it=lista.iterator(); System.out.println("Unesite broj koji trazite: "); String trBr=br.readLine(); m=Integer.parseInt(trBr); while(it.hasNext()){ Integer l=((Integer)it.next()).intValue(); if(l%2==0){ parni.add(l); } if(l==m){ System.out.println("Trazeni br je nadjen: "); } System.out.println("Lista parnih "+parni); } } [Ovu poruku je menjao hyle dana 21.12.2006. u 13:11 GMT+1] [ SluX @ 21.12.2006. 10:55 ] @
Pazi, ako koristis iterator da bi prosao kolekciju, nema povratka nazad. Jedino resenje tu bi bilo da uzmes novi iterator, pa da krenes sve iz pocetka.
Takodje, mogao bi da prodjes kroz listu isto kao kroz niz. Ako imas npr: ArrayList lista=new ArrayList(); mozes da kazes posle for(int i=0;i<lista.size();i++)//size vraca broj elemenata ubacenih u listu.. sad unutar ove petlje uvek mozes da resetujes brojac na nulu da bi krenuo iz pocetka(mada mi je prilicno nejasno zasto bi to radio ;)) Nadam se da je pomoglo. [ dusanl @ 21.12.2006. 12:01 ] @
E nisam se setio da napravim novi iterator jer sam mislio da ovaj moze nekako da se resetuje, mada je resenje novi.
Hvala Vam puno svima. [ anon315 @ 22.12.2006. 10:21 ] @
Btw, mozes i 'vako da prodjes kroz listu:
Code: ArrayList<TvojTip> lista = new ArrayList<TvojTip>(); for(TvojTip tt : lista) { // Radi nesto sa tt } Ovo ce proci za Javu >= 1.5 [ SluX @ 22.12.2006. 19:11 ] @
Koliko znam to je foreach petlja....:P
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|