Java tutorial Copyright á 2000-2001, Kozsik Tama s
Ne ha ny alaposzta ly, amit ismerni illik ő ő ő ő ő ő
Object String StringBuffer Integer, Double, ... System Math
toString ő Tetsz˝leges objektumra mu kodik: System.out.println( "o = " + o );
ő A + jel hata sa ra az o automatikusan String-ge konverta lé dik, me gpedig a toString meghıva sa val. ő Sok oszta ly definia lja a toString specializa la sa val, hogy hogyan kell szoveges forma ra alakıtani az objektumait. ő Az Object-beli alape rtelmezett mu kode s az objektum dinamikus tıpusa nak neve t e s hashCode-ja t ırja ki. (Ez uté bbi egy sza m.) System.out.println(new String[2]); [Ljava.lang.String;@23bcc1
Tombok, kollekcié k e s egye b alaposzta lyok
Object é Minden ma s oszta lynak az ˝se. (Alape rtelmezett, ha nincs extends.) é Teha t minden objektum beletartozik az Object oszta lyba. é Alapvet˝ mu veleteket definia l, amelyekkel minden objektum kell, hogy rendelkezzen. String toString() stringge alakıt boolean equals( Object o ) osszehasonlıt egyebek: clone, getClass, hashCode, finalize, stb.
equals vs. == ő Objektumok egyenl˝se ge t az equals meté dussal illik vizsga lni. Alape rtelmeze sben ez ugyanaz, mint az ==. ő De pe lda ul mikor egyenl˝ ke t da tum? Ha ugyanazt az id˝pontot jelolik, nem? ő Az == azt mondja meg, hogy ke t referencia mikor egyenl˝. (Azaz, hogy a ke t objektum mikor azonos.) Pe lda ul nem lesz igaz az ala bbi: new Datum(1970,4,28) == new Datum(1970,4,28)
ő Az a szoka s, hogy az oszta lyok, felúldefinia lva az equals meté dust, megadja k, hogy mikor egyenlo ke t objektum. Ez ma r igaz lehet: (new Datum(1970,4,28)).equals( new Datum(1970,4,28) )
1 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Az equals meté dus a Da tum oszta lyban public class Datum { int ev, honap, nap; public boolean equals( Object d ){ if( d instanceof Datum ) return ev == ((Datum)d).ev && honap == ((Datum)d).honap && nap == ((Datum)d).nap; else return false; } public int hashCode(){ // ez is kell return 400*ev + 31*honap + nap; } ... }
Pe lda da tumokkal Datum d1 = new Datum(2001,1,1); Datum d2 = new Datum(2001,1,1); Datum d3 = new Datum(1789,7,14); d1.equals(d2) ? d1.equals(d3) ? d1 == d2 ? d1 == d3 ? (new Object()).equals( new Object() ) ? new Object() == new Object() ?
A String oszta ly ő Unicode karakterek sorozata String s = "Szia!"; String s = new String("Szia!");
Java tutorial Copyright á 2000-2001, Kozsik Tama s
ő Egy String objektum tartalma t nem lehet mé dosıtani. Helyette –j stringet kell le trehozni. s = "Szia?"; s = new String("Szia?");
ő De rengeteg konstrua lé , leke rdez˝ e s osszehasonlıté mu velet van. length, charAt, compareTo, concat, endsWith, replace, substring, trim, valueOf, indexOf, equalsIgnoreCase, toLowerCase, ...
A StringBuffer oszta ly ő Unicode karakterek sorozata ő A tartalma t megva ltoztathatom ane lkúl, hogy –j objektumot kellene le trehozni. ő Ma s a reprezenta cié ja, mint a String oszta lynak, eze rt ma s mu veleteket lehet rajta hate konyan megvalé sıtani. append, insert, reverse, setCharAt, setLength
ő A mu veletek, azon kıvúl, hogy transzforma lja k az objektumot, vissza is adnak egy referencia t ra . Ez eze rt jé : StringBuffer b = new StringBuffer("Szia!"); b.append(" Hi!").append(" Salut!").reverse();
Csomagolé oszta lyok ő A primitıv tıpusokhoz le teznek csomagolé (wrapper) oszta lyok: Integer, Byte, Double, Boolean, stb. int i = 42; Integer j = new Integer(i);
ő Akkor haszna ljuk ˝ket, ha primitıv tıpus– e rte ket akarunk objektumke nt haszna lni. Pe lda ul, ha a toString ke ne... System.out.println("minden=" + 42);
Ehhez ez kell: new Integer(42).toString()
Egy ma sik fontos pe lda kicsit ke s˝bb... Vector v = new Vector();
v.add(j);
2 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Csomagolé oszta lyok (2) boolean char int float
Boolean Character Integer Float
byte short long double
Byte Short Long Double
ő Mu veletek pl. az Integer oszta lyhoz: static int parseInt(String s [, int radix]) Integer( String s ) static String toString( int i [, int radix]) final static int MIN_VALUE, MAX_VALUE
Feladat ő A Java nyelv specifika cié ja megengedi a fordıté knak, hogy ne hozzanak le tre azonos string-litera lokhoz kúlon objektumokat. Pré ba ld ki, hogy az a ltalad haszna lt fordıté milyen! ő E s mi a helyzet ke t Integer objektummal?
Me g ne ha ny e rdekes oszta ly ő Math • Math.PI, Math.E • abs(), sqrt(), pow(), log(), min(), floor(), round(), rint(), random(), sin(), asin(), toRadians()
ő System • in, out, err • currentTimeMilis(), exit(int), gc()
ő Number É A sza m jellegu csomagolé oszta lyok kozos ˝se.
A String-es feladathoz: String s = new String("Szia!"); String z = new String("Szia!"); if( s == z ) ...
Tombok Java tutorial Copyright á 2000-2001, Kozsik Tama s
ő Sok, azonos tıpusba tartozé e rte k ta rola sa ra ő Hate kony ele re s: indexele s ő Id˝ige nyes besz–ra s e s torle s
3 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Egy regi peldaprogram fel-e-le-ve-nı-te-se class Hossz { public static void main( String args[] ){ if( args.length > 0 ) System.out.println(args[0].length()); } }
Tomb tıpus– va ltozé definıcié ja
Tomb le trehoza sa é A va ltozé deklara cié ja nem hozza le tre a tombot. é A tombtıpusok olyanok, mint az oszta lyok. A tombok le nyege ben objektumok. int[] t = new int[10]; int t[] = new int[10];
é Egy tomb tıpus– va ltozé csak egy referencia. int[] s; int x = s[0]; int y = s.length;
int t[]; int[] t;
NullPointerException int[3] x; int y[3];
A tomb elemeinek ele re se é A tombok nulla té l indexel˝dnek, hossz mınusz egyig. é A hosszt a tomb le trehoza sakor adjuk meg. á á
A hosszt megva ltoztatni nem lehet. A referencia nak viszont mindegy, hogy milyen hossz– a tomb. int[] x = new int[5]; x = new int[7]; int y[] = x;
é A hossz leke rdeze se:
Hiba sak!
Amıg nincs le trehozva a tomb objektum, addig nem megy!
Hiba sak!
Tomb feltolte se
double[] t = new double[3]; t[0] = 1.0; t[1] = 2.0; t[2] = 3.0;
double[] s = new double[3]; for( int i = 0; i < s.length; i++ ) s[i] = i;
args.length double[] v = {1.0, 2.0, 3.0};
é A tomb indexele se:
args[i]
é A futtaté rendszer ellen˝rzi az indexhata rokat! Ha nem stimmel: ArrayIndexOutOfBoundsException
double[] w; w = new double[] {1.0, 2.0, 3.0};
Objektumok tombje Igazandibol referenciakbol allo tmb.
Java tutorial Pont[] t; t = new Pont[3]; for (int i=0; i<3; i++) t[i] = new Pont(i,2);
Copyright á 2000-2001, Kozsik Tama s
Pont[] s = { new Pont(1,2), new Pont(2,2), new Pont(3,2) }
4 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
public class Verem {
Feladat ő A Verem oszta ly minta ja ra ke szıtsd el a Sor oszta lyt! A sor Object-eket ta rol, mu veletei a put e s a get. A reprezenta cié hoz haszna lj tombot, melynek me rete t a konstruktornak kell a tadni parame terke nt. ő Segıtse g: tarts nyilva n ke t indexet, amelyek azt jelzik, hogy a soron kovetkez˝ get, ill. put mu velet melyik elemen kell dolgozzon. A ke t index ja rjon korbe-korbe a tombon. Kive telkezele ssel (úres vagy tele a sor) ne foglalkozz!
Tobbdimenzié s tomb ő Nincs Java-ban. ő De lehet csina lni t¨mb¨k t¨mbje t. int[][] mdt = new int[3][2]; for (int i=0; i<3; i++) for (int j=0; j<2; j++) mdt[i][j] = i*j;
Object[] adatok; int veremtet˝ = 0; int maxmeret;
Verem osztaly
public Verem( int maxmeret ){ this.maxmeret = maxmeret; adatok = new Object[maxmeret]; } public void push( Object o ) adatok[veremtet˝] = o; veremtet˝ ++; } public Object pop(){ ... } }
Szaba lytalan alak– "ma trix" int mdt[][]; mdt = new int[2][]; mdt[0] = new int[3]; mdt[0][0] = 7; mdt[0][1] = 2; mdt[0][2] = 9; mdt[1] = new int[4]; mdt[1][0] = 2; mdt[1][1] = 4; mdt[1][2] = 8; mdt[1][3] = 0;
Heteroge n tomb
Java tutorial Copyright á 2000-2001, Kozsik Tama s
ő Egy tombben tobbfe le oszta ly– objektumot ta rolhatok ő Ha: rendelkeznek valamilyen kozos ˝stıpussal ő A tombelemek statikus tıpusa kozos. Ez mondja meg, hogy milyen mu veleteket haszna lhatunk ra juk. ő A tombelemek dinamikus tıpusa kúlonboz˝ lehet. Ez mondja meg, hogy melyik implementa cié t kell ve grehajtani. Alkalmazott t[] = new Alkalmazott[100]; for( int i=0; i<100; i++ ) t[i] = new Alkalmazott(); t[42] = new Fonok(); for( int i=0; i<100; i++ ) System.out.println( t[i].fizetes() );
5 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Tombtıpus, mint oszta ly
Feladat Feladat /
Elemek tıpusa: double
ő Sok szempontbé l olyan... ő "Altıpusossa g"
Mu veletek: Le trehoza s (nulla kkal, illetve egy adott elemmel feltoltve) Elem leke rdeze se e s bea llıta sa Skala rral valé szorza s Hozza adas, osszeada s Szorza s (Ha zi feladat) egyse gma trix le trehoza sa (negyzetes) toString
Object[] t = new Alkalmazott[3];
ő Vigya zat! Ezuta n futa si ideju hiba t okoz: t[0] = new Object();
ő Ez viszont jé lesz: t[0] = new Fonok();
Valé sıtsd meg a Ma trix tıpust.
/
A reprezenta cié hoz haszna lj ke tdimenzié s tombot.
Egye b kollekcié k Java tutorial Copyright á 2000-2001, Kozsik Tama s
Hate konysa g ő "Trade-off" ő Tomb: konstans ele re s, linea ris besz–ra s ő Lista: linea ris ele re s, konstans besz–ra s ő Kupac: logaritmikus ele re s e s besz–ra s ő Va lasszuk azt, ami a feladathoz a leginka bb megfelel.
ő sorozat ő halmaz ő verem ő kupac ő gra f
é vektor é lista é sor é fa é hash-ta bla
Lehet˝se gek Java-ban ő Tombok ő A Vector, Stack e s Hashtable oszta lyok a java.util csomagbé l É A JDK 1.0 é ta vannak ma r a nyelvben
ő Gyu jteme ny Keretrendszer (Collections Framework) É A JDK 1.2 é ta szabva nyosıtott re sze a nyelvnek
ő Egye b, nem standard konyvta rak is ele rhet˝k, pl. JGL.
6 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Vector ő Viszonylag gyors leke rdeze s/besz–ra s/torle s eleje, ve ge, kozepe ő Object-eket ta rolhatunk benne boolean contains( Object elem ) int indexOf( Object elem ) Object elementAt( int index ) Object lastElement() Object removeElementAt(int index) boolean removeElement( Object elem ) void insertElementAt( Object elem, int index ) void addElement( Object elem ) stb.
Pe lda a Vector haszna lata ra import java.util.*; class R¨vidSzavak { public static void main(String args[]){ Vector v = new Vector(); for( int i=0; i<args.length; i++ ){ if( args[i].length() < 10 ){ v.add(args[i]); } } } }
A Vector elemei ő Az elemek Object tıpus–ak. void utolsoBorNelkul( Vector v ){ for( int i=v.size()-1; i>=0; i-- ){ String s = (String) v.getElementAt(i); if( s.endsWith("bor") ){ v.removeElementAt(i); return; } } }
Sza mok sorozata ő Ha tombot szeretne nk haszna lni: int[] t = {2,42,37}; new int[3] Integer[] t = { new Integer(2), new Integer(42), new Integer(37) };
É Ege sz ma ske pp helyezkednek el a memé ria ban az adatok.
ő Ha ma st, mondjuk Vector-t: Vector v = new Vector(); v.add( new Integer(42) );
Java tutorial Copyright á 2000-2001, Kozsik Tama s
Enumeration ő Itera tor, melynek segıtse ge vel egy gyu jteme ny beja rhaté . Pe lda ul egy Vector... void kiır( Enumeration e ){ while( e.hasMoreElements() ){ Object o = e.nextElement(); System.out.println(o); } }
v.add( new Integer(37) ); v.insertElementAt( new Integer(2), 0 );
kiır(v.elements())
7 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Kapacita s
Java tutorial Copyright á 2000-2001, Kozsik Tama s
ő Aka rmennyi elemet ta rolhatunk a Vector objektumokban. ő A pozıciona lé s mu veletek hate konysa ga nak biztosıta sa e rdeke ben "tomb jellegu " bels˝ reprezenta cié . ő Id˝nke nt "megtelik": ilyenkor szerez me g egy kis memé ria t, hogy tova bb lehessen belepakolni. ő Automatikusan megnoveli a kapacita sa t. ő A kezdeti kapacita s bea llıthaté a konstruktorban. Vector() Vector( int initialCapacity ) Vector( int initialCapacity, int capacityIncrement ) capacity(), ensureCapacity(), trimToSize()
Feladat ő Irj egy mu veletet, amely egy vektorbé l kiszedi azon elemek els˝ el˝fordula sait, amely elemek tobbszor is el˝fordulnak a vektorban. Az ala bbi mé don valé sıtsd ezt meg. Leke rve egy Enumeration objektumot, pakold a t sorra az elemeket egy ma sik vektorba, ha me g nem voltak benne. Ha ma r benne voltak, akkor egy harmadik vektorba tedd ˝ket, ha abban me g nem voltak. Ezuta n ezt a harmadik vektort ja rd be egy Enumeration segıtse ge vel, e s minden eleme nek torold ki az els˝ el˝fordula sa t a legels˝ vektorbé l.
Hashtable ő Ha nem ege sz sza mokkal akarunk indexelni, hanem tetsz˝leges objektumokkal... ő kulcs - e rte k pa rokat ta rolhatunk Hashtable ht = new Hashtable(); ht.put("kalap", "piros"); ht.put("kabat", "kek"); String kalapSzıne = (String) ht.get("kalap");
ő Egy pa r besz–ra sa e s visszakerese s kulcs alapja n: Object put( Object key, Object value) Object get( Object key )
É A kulcs is e s az e rte k is aka rmilyen objektum lehet. É Egy ta bla n belúl is lehet tobbfe le kulcs...
Stack: verem adattıpus ő A Vector lesza rmazottjake nt lett definia lva. ő Szoka sos veremmu veletek: Object push( Object elem ) Object pop() Object peek() boolean empty()
Tova bbi Hashtable mu veletek ő kerese sek, torle s, kulcsok e s e rte kek leke rdeze se, stb. boolean containsKey ( Object key ) boolean containsValue ( Object value ) Object remove ( Object key ) Enumeration keys() Enumeration elements() int size() void clear()
ő Hate kony ta rola s e s kerese s, a kulcsok hashCode()-ja alapja n.
8 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Pe lda a Hashtable alkalmaza sa ra ő Megsza moljuk, hogy a parancssori argumetumok kozúl melyik szé ha nyszor szerepel. java Hanyszor elmegyek elmegyek messze megyek {messze=1, elmegyek=2, megyek=1}
import java.util.*; class Hanyszor { public static void main(String[] args){ Hashtable h = new Hashtable(); for( int i=0; i<args.length; i++ ){ String kulcs = args[i]; Integer hanyszor; if( h.containsKey(kulcs) ){ hanyszor = (Integer) h.get(kulcs); int megEgy = hanyszor.intValue() + 1; hanyszor = new Integer(megEgy); } else hanyszor = new Integer(1); h.put( kulcs, hanyszor ); } System.out.println(h); } }
Feladat ő A parancssori argumentumokban sza mokat adunk a t a programunknak. Minden el˝fordulé sza mhoz ta roljuk el, hogy ha nyadik parancssori argumentum. Ha tobbszor is el˝fordul a sza m, akkor az osszes el˝fordula sa nak sorsza ma t el kell ta rolni. Ez alapja n a nyilva ntarta s alapja n a programunk ırja ki a ke perny˝re, hogy melyik sza m ha nyadik pozıcié kon fordult el˝.
Java tutorial Copyright á 2000-2001, Kozsik Tama s
java Kigyujt 11 32 1 32 5 11 32 32: 1 3 6 5: 4 1: 2 11: 0 5 {32=[1, 3, 6], 5=[4], 1=[2], 11=[0, 5]}
import java.util.*; class Kigyujt { public static void main(String[] args){ Hashtable h = new Hashtable(); for( int i=0; i<args.length; i++ ) betesz( h, new Integer(i), new Integer(args[i]) ); kiır(h); // System.out.println(h); } public static void betesz( Hashtable h, Integer poz, Integer szam ){...}
public static void betesz( Hashtable h, Integer poz, Integer szam ){ Vector v; if( h.containsKey(szam) ) v = (Vector) h.get(szam); else v = new Vector(); v.add(poz); h.put( szam, v ); }
public static void kiır( Hashtable h ){...} }
9 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
A Gyu jteme ny Keretrendszer public static void kiır( Hashtable h ){ Enumeration szamok = h.keys(); while( szamok.hasMoreElements() ){ Integer szam = (Integer) szamok.nextElement(); System.out.print(szam + ": "); Vector v = (Vector) h.get(szam); Enumeration pozıciok = v.elements(); while( pozıciok.hasMoreElements() ) System.out.print( pozıciok.nextElement() + " " ); System.out.println(); } }
Collection: gyu jteme ny absztrakcié boolean add(Object o) boolean contains(Object o) boolean remove(Object o) boolean addAll(Collection c) boolean containsAll(Collection c) boolean removeAll(Collection c) boolean retainAll(Collection c)
Interfe szek:
gyu jteme ny, leke peze s, halmaz, lista
Map
Collection
Set
SortedMap
List
SortedSet
List: sorozat adattıpus ő ugyanaz az elem tobbszor is szerepelhet ő az elemek sorrendje le nyeges ő ke t lista egyenl˝, ha ua. elemek ua. sorrendben ő olyasminek ke pzelhetjúk, mint a Vector s˝t: a Vector megvalé sıtja ezt az interfe szt ő rovidek a mu veletek nevei:
set, get, add
ő a remove az elem legels˝ el˝fordula sa t ta volıtja el az add e s addAll a sorozat ve ge hez adja hozza
void clear() boolean isEmpty() int size()
Gyu jteme nyek rendszere, absztrakcié s szintek bevezete se vel.
Iterator iterator()
Object[] toArray()
ő ke tfe le megvalé sıta s: LinkedList e s ArrayList
A List megvalé sıta sai ő ke tfe le megvalé sıta s É la ncolt (lista) a LinkedList oszta ly őhate kony a besz–ra s a sorozat eleje re őhate kony torle s beja ra s kozben É vektor jellegu az ArrayList oszta ly őhate kony pozıciona lé mu veletek őa ltala ban ezt haszna ljuk (a ltala ban ez hate konyabb) őa lesza rmazottja a Vector
Java tutorial Copyright á 2000-2001, Kozsik Tama s
10 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Set: halmaz adattıpus
Egy pe lda a List interfe szhez import java. util.*; public class ListabaPakolok { public static void main( String[] args) { List s = new ArrayList(); s.add("Route"); s.add(new Integer(66)); s.add("Route"); s.add("to LA"); System.out.println(s); } } é [Route, 66, Route, to LA]
ő ő ő ő
egy elem csak egyszer szerepelhet a halmazban az elemek sorrendje indifferens ke t halmaz egyenl˝, ha ua. az elemek vannak bennúk tartalmaza s: contains, containsAll –nié : addAll metszet: retainAll kúlonbse g: removeAll ő Megvalé sıta s: HashSet ő Egy ma sik megvalé sıta s: TreeSet, ami a SortedSet-et is megvalé sıtja É Azaz a halmaz elemeihez rendezetten is hozza fe rúnk.
Egy pe lda a Set interfe szhez import java. util.*; public class HalmazbaPakolok { public static void main( String[] args) { Set s = new HashSet(); s.add("Route"); s.add(new Integer(66)); s.add("Route"); s.add("to LA"); System.out.println(s); } }
Java tutorial Copyright á 2000-2001, Kozsik Tama s
[to LA, Route, 66]
Iterator: gyu jteme ny beja ra sa ő Olyasmi, mint az Enumeration interfe sz É picit rovidebbek a mu veletek nevei É lehet torolni is beja ra s sora n
ő Mu veletek: boolean hasNext(), Object next(), void remove()
ő Lesza rmazottja a ListIterator. Ilyen a sorozatoknak (List) van. Me g tobb mu velet... boolean hasPrevious(), Object previous() void add(Object), void set(Object) int nextIndex(), int previousIndex()
Pe lda az Iterator haszna lata ra import java.util.*; public class Iteracio { public static void main(String[] args){ Collection c = new ArrayList(); for( int i=0; i<10; i++) c.add( new Double(Math.random()) ); Iterator it = c.iterator(); while( it.hasNext() ){ Double d = (Double) it.next(); if( d.doubleValue() < 0.6 ) it.remove(); } System.out.println(c); } }
11 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Map: leke peze s adattıpus ő Olyasmi, mint a HashTable ő kulcs e s e rte k pa rok ő Itera cié
Java tutorial
É kulcsokon: keySet().iterator() É e rte keken: values().iterator() É pa rokon (Entry a neve): entrySet().iterator()
Copyright á 2000-2001, Kozsik Tama s
ő Ke t implementa cié : HashMap e s TreeMap É A TreeMap megvalé sıtja SortedMap-et is (rendezettse g!)
ő A ltala ban a HashMap-et haszna ljuk, az hate konyabb.
Terme szetes rendeze s szerint
Rendeze s
é Comparable:
ő Tomboket: az Arrays oszta ly sort mu velete vel ő Sorozatokat, azaz List-eket a Collections oszta ly sort mu velete vel. ő Ha a tombben/sorozatban ta rolt elemeken van terme szetes rendeze s. (La sd a Comparable interfe szt!)
import java.util.*; class Rendez { public static void main( String[] args ) throws ClassCastException { Arrays.sort(args); for( int i=0; i<args.length; i++ ) System.out.println(args[i]);
á int[], Integer[] á List, amibe Double objektumokat teszúnk
ő Lehet saja t rendeze st definia lni, e s aszerint rendezni. (La sd a Comparator interfe szt!)
Feladat ő Tegyúk fel, hogy a parancssori argumentumok ege sz sza mok. Irjuk ki rendezve ˝ket!
int compareTo(Object o)
} } Hello java Rendez Szia Hello Salut
Salut
Saja t rendeze s definia la sa í Comparator: int compare( Object o1, Object o2 )
class HosszHasonlıto implements Comparator { public int compare(Object o1, Object o2) { int h1 = ((String) o1).length(); int h2 = ((String) o2).length(); if( h1
12 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
import java.util.*;
Rendeze s sorozatokon
class Rendez { public static void main( String[] args ) throws ClassCastException { Arrays.sort(args, new HosszHasonlıto()); for( int i=0; i<args.length; i++ ) System.out.println(args[i]); } }
ő Ugyanıgy, csak a Collections.sort mu veletet kell meghıvni egy List objektumon. ő Aka r terme szetes rendeze s, aka r saja t rendeze s lehet.
Hi java Rendez Szia Hi Salut
Szia Salut
Egye b mu veletek ő ő ő ő ő
minimum- e s maximumkerese s bina ris kerese s megfordıta s feltolte s, ma sola s rendeze s megszúntete se
min(), max() binarySearch() reverse() fill(), copy() shuffle()
ő Arrays, Collections
Feladat ő Oldd meg a sza mok rendeze se t ma ske pp: ırj egy olyan Comparator oszta lyt, ami Stringeket –gy hasonlıt ossze, hogy a parseInt mu velettel el˝szor sza mot csina l bel˝lúk, e s azuta n ezeket hasonlıtja ossze. ő Oldd meg a sza mok rendeze se t –gy, hogy a parancssori argumentumokat nem tombbe pakolod, hanem egy ArrayList objektumba!
Java tutorial Copyright á 2000-2001, Kozsik Tama s
13 PDF created with FinePrint pdfFactory trial version http://www.fineprint.com