Parancssori argumentumok Primitív típusok Operátorok Vezérlési szerkezetek Tömbök Ürmös Beáta, 2011.

Slides:



Advertisements
Hasonló előadás
C# nyelvi áttekintő A „Programozás C# nyelven (Illés Zoltán)”
Advertisements

Programozás III JAVA ALAPOK.
Tömbök C#-ban.
Programozás III KOLLEKCIÓK 2..
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Adatbányászati technikák (VISZM185)
Öröklődés 2..
JavaScript.
© Kozsik Tamás Tömbök, kollekciók és egyéb alaposztályok.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
Dinamikus tömbök.
Bevezetés a Java programozásba
Bevezetés a Java programozásba
Bevezetés a Java programozásba
Fájlkezelés, IO Kivételkezelés Belső osztályok
Osztályok Garbage collection.  általában minden osztálynak vannak adattagjai és/vagy metódusai ◦ adattagok megadása:  [láthatóság] [static] [final]
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 8. Gyakorlat Operator overloading II.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 9. Gyakorlat Alap file műveletek.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
Követelmények Bevezetés a Javába Első java program írása Dokumentációk
Tömbök ismétlés Osztályok Java-ban Garbage collection
Függvények, mutatók Csernoch Mária.
Mutatók, tömbök, függvények
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
C# Alapok Krizsán Zoltán.
C# tagfüggvények.
Web-grafika (VRML) 10. gyakorlat Kereszty Gábor. Script típusok Elemi típusok: szám: egész vagy lebegőpontos – int / float – 1 / 1.1 string: ‘Hello World!’
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
A JAVA TECHNOLÓGIA LÉNYEGE Többlépcsős fordítás A JAVA TECHNOLÓGIA LÉNYEGE Platformfüggetlenség.
Kivételkezelés.
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
Programozás C# -ban Tömbök.
P ROGRAMOZÁS C# - BAN Kivételkezelés. P ÉLDA I. Nullával való osztás miatt kapjuk a hibaüzenetet.
Programozás Operátorok C# -ban.
C nyelv utasításai.
Tömbök Csernoch Mária.
Összetett adattípusok
VI. Konténerek 18. Tömbök 19. Rendezés, keresés, karbantartás
VI. Konténerek 18. Tömbök 19. Rendezés, keresés, karbantartás
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:
Tömbök és programozási tételek
Rendezések és szövegkezelő függvények
1. Gyakorlat - Alapok 1. Írjon konzolprogramot, amely kiírja a “Hello ELTE” üzenetet! Használja a System.out.println() -t! 2. Írjon konzolprogramot, amely.
Készítette: Csíki Gyula
Hernyák Zoltán Programozási Nyelvek II.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Javascript Microsoft által készített kiegészítése Statikus típusosság Nagy projektek Windows 8 fejlesztésénél WinRT egy részét ebben írták Nyílt forráskódú,
Java programozási nyelv Filekezelés
Komoróczy Tamás 1 Java programozási nyelv Stringek.
Java programozási nyelv Metódusok
Komoróczy Tamás 1 Java programozási nyelv A nyelv alapjai.
Java programozási nyelv Adatbekérés konzolról
Webprogramozó tanfolyam
Objektum orientált programozás
Programozás III KIVÉTEL.
1. feladat  Készíts olyan függvényt, mely paraméterül kapja két egész típusú változó címét, s hívása után a két változó értéke helyet cserél.
A 2. géptermi beszámoló VBA anyagának összefoglalása
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás I. 7. gyakorlat.
Excel programozás (makró)
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás I. 3. gyakorlat.
Függvények, mutatók Csernoch Mária. Függvények függvény definíciója az értelmezési tartomány tetszőleges eleméhez hozzárendel egy értéket –függvény helyettesítési.
Informatikai gyakorlatok 11. évfolyam
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Utasítás és blokk. Elágazás típusai, alkalmazása Kovács.
Kifejezések C#-ban.
Excel programozás (makró)
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Konverziós operátorok
Előadás másolata:

Parancssori argumentumok Primitív típusok Operátorok Vezérlési szerkezetek Tömbök Ürmös Beáta, 2011

 minden parancssorból indított Java programnak átadhatunk argumentumokat is ◦ a main függvényben: String[] args a parancssori argumentumokat tartalmazó tömb  a program indításakor megadott argumentumokat az args tömb tartalmazza ◦ egyes elemeit indexeléssel érjük el ◦ Javában az indexelés 0-tól indul

int elsoArg; if (args.length > 0) { try { elsoArg = Integer.parseInt(args[0]); } catch (NumberFormatException e) { System.err.println("Argument must be an integer"); System.exit(1); } }

 args.length ◦ az args tömb elemeinek számával tér vissza  try{} és catch{} blokkok ◦ kivételkezelés (bővebben később…)  args[0]: ◦ az args tömb első elemének elérése

 Integer.parseInt(args[0]); ◦ az args tömb első elemét számmá alakítjuk (erre azért van szükség, mert a parancssori argumentumokat String-ként kapjuk meg, mi viszont egy int típusú változóban akarjuk eltárolni az értékét) ◦ általános alak:.parse*( );  Integer.parseInt(“5”);  Double.parseDouble(“6.15”);  stb.  a program neve nem parancssori argumentum!

 a stacken keletkeznek  mindig érték szerint tárolódnak ◦ minden más referencia szerint  csak előjeles típusok vannak (ellentétben a C- vel) ◦ Pl. int van, de unsigned int nincs  2 speciális típus: ◦ BigInteger: akármekkora egész szám ◦ BigDecimal: akármekkora fix pontos szám  Példaprogram: PrimitivTipusok.java

 objektumba csomagolják a primitív típust, és a heap-en tárolják  Pl.: ◦ int a;  ez nem objektum, hanem egyszerű változó! ◦ Integer a = new Integer(5);  ez objektum!

Integer a = new Integer(5); Integer b = new Integer(3); Ebben az esetben: a = b;  ennek hatására „a” ugyanoda mutat, ahova „b” a = b.clone();  „b” értéke az „a”-ba másolódik Míg ha „a” és „b” egyszerű int típusú változók: a = b ;  értékadás

 n lépéssel toljuk a biteket balra  2 n-edik hatványával szorozzuk az eredeti decimális számot ◦ mindig 0-val töltődnek fel az átléptetett helyek  Pl.: 16 << 2 (decimális 64)

 n lépéssel toljuk a biteket jobbra  2 n- edik hatványával osztjuk az eredeti decimális számot ◦ mindig az előjelbittel töltődnek fel az átléptetett helyek  Pl.: 16 >> 2 (decimális 4)

 n lépéssel toljuk a biteket jobbra ◦ mindig 0-val töltődnek fel az átléptetett helyek  pozitív számok esetén ugyanaz, mint az előjeles léptetés  negatív számok esetén furcsa eredményt ad ◦ Pl. -16 >>> 2  decimális

int a = 5; int x; x = ++a; x = a++; Prefix operátorként: x értéke 6 lesz Postfix operátorként: x értéke 5 lesz, és az értékadás után növelődik ‘a’

double c; c= 5/2; c = ((double)5)/2;  osztályok között is lehet típuskonverzió Ennek az eredménye: 2.0 Ennek az eredménye: 2.5

 Operatorok.java

 minden C-ben megismert vezérlési szerkezetet használhatunk Java-ban is ◦ goto van, de ne használjuk (ahogy C-ben sem)

for (int i = 0; i < 5; i++){ … }  több ciklusváltozó/több feltétel esetén vesszővel választom el őket  Példaprogram: Haromszog.java Deklarálhatom itt is, de ez a változó csak a cikluson belül él!

 pub könyvtár: 3. gyakorlathoz tartozó feladatok.txt-ben

 Számítsd ki a parancssoron kapott két időpont (óra perc óra perc) között eltelt időt és írasd ki a konzolra (óra perc formában).  Ellenőrizd, adott-e meg a felhasználó parancssori argumentumot! (Ha nem, akkor tájékoztasd, hogy mit és milyen formában várja a program.)  Szerda éjfélig küldhető be!

 Java-ban a tömbök is objektumok ◦ new kulcsszóval kell őket létrehozni  Pl.: ◦ int[] egeszek= new int[10]; ◦ double valosak[] = new double[5]; ◦ Alma[] almaskosar = new Alma[8]; Az Alma egy saját, általunk létrehozott típus.

 minden tömbnek van egy csak olvasható adattagja: length ◦ a tömb hosszát (elemszámát) adja vissza ◦ pl.: almaskosar.length  indexelés: mindig 0-tól kezdődik és n-1-ig tart int szamok[] = new int[10]; szamok[10] = 10; szamok[9] = 10; Helytelen! Helyes!

 több módon is lehetséges: ◦ int egeszek[] = {1,2,3}; ◦ int[] egeszekMasolat= egeszek;  többdimenziós tömböt is létrehozhatunk, hasonlóan az egydimenzióshoz: ◦ int[][] ketdim= { {1,1,1}, {2,3,4} }; ◦ int[][][] haromdim= { {1,2,3}, {4,5,6}, {7,8,9} }; ◦ int[][][] haromdimMasodik= new int[2][3][5]; ◦ int [][] masikTomb = ketdim;  ugyanolyan értékeket vesz fel, mint a „ketdim” nevű tömb

 DoubleTomb.java (pub, 04-es mappa)  Tomb.java (honlapom)

Ajánlott linkek: Primitív típusok: dbolts/datatypes.html dbolts/datatypes.html rt1/Java/Chapter02/primitives.html rt1/Java/Chapter02/primitives.html Operátorok: dbolts/opsummary.html dbolts/opsummary.html Parancssori argumentumok: vironment/cmdLineArgs.html vironment/cmdLineArgs.html