Programozás 2., I. kötet Az objektumorientált paradigma alapjai
Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2...
Transcript of Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2...
![Page 2: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/2.jpg)
2
Széchenyi István Egyetem
A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott Robusztus (hibatűrő, megbízható): Biztonságos Hordozható Architektúra-független
(gépfüggetlen): Interpretált Nagy teljesítményű Többszálú Dinamikus
![Page 3: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/3.jpg)
3
Széchenyi István Egyetem
A java virtuális gép (JVM)
Képzeletbei, „ideális” számítógép. Szoftveresen megvalósított működési környezet.
(az op. rendszer egy folyamata).
Feladata:Betölti a használt osztályokat (.class állományok)Az ott található blokkokat, utasításokat értelmezi, átalakítja gépi
kódú üzenetekké és futtatja.Memóriát kezel, kioszt, felszabadít, op. rendszerrel kapcsolatot tart, erőforrásokat használ.
![Page 4: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/4.jpg)
4
Széchenyi István Egyetem
![Page 5: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/5.jpg)
5
Széchenyi István Egyetem
![Page 6: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/6.jpg)
6
Széchenyi István Egyetem
![Page 7: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/7.jpg)
7
Széchenyi István Egyetem
A Java adattípusai
![Page 8: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/8.jpg)
8
Széchenyi István Egyetem
A Java adattípusai
![Page 9: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/9.jpg)
9
Széchenyi István Egyetem
A Java megszámlálható egész adattípusai Egészek:
byte (8 bites, -128 – 127) short (16 bites, -32.768 – 32.767) int (32 bites, -2.147.483.648 – 2.147.483.647) long (64 bites, -9.223.372.036.854.775.808 –
9.223.372.036.854.775.807) Pl.:
int újSzoket, régiSzoket, newSocket, oldSocket; byte elsőBájt, lastByte; byte utolsóBájt = 12; (értékadással) int folyamAzonosító = 017; (oktális értékadás) int streamId = 017; int kapcsolóAzonosító = 0XFF; (hexadecimális értékadás) int streamControlId=0X0F, switchId=0XBB;
![Page 10: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/10.jpg)
10
Széchenyi István Egyetem
Lebegőpontos típusok: float (32 bites, 1.40129846432481707e-45 -
3.40282346638528860e+38) double (64 bites, 4.94065645841246544e-324d -
1.79769313486231570e+308d)
Pl.: float összeg=23.8f, újÖsszeg=24.f; float cashValue=23.8f, newCashValue; double teljesÖsszeg=1.56e2, régiÖsszeg=2.34E4d,
össz=7.34d; double newTotal=1.56e2, oldTotal=2.34E4;
![Page 11: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/11.jpg)
11
Széchenyi István Egyetem
Karakter típusú adatok:char (2 bájt/karakter!, 0 – 65.535 )Pl.:
char elsőBetű, másodikBetű='b'; char senseChar, ringChar='e';
Logikai típusú adatokboolean (1 bit)Pl.:
boolean kilép, vanÉrték=true; boolean loopSensor, pollSensor=true;
![Page 12: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/12.jpg)
12
Széchenyi István Egyetem
Kulcsszavak és azonosítókabstract boolean break byte case
catch char class const continue
default do double else extends
final finally float for goto
if implements import instanceof int
interface long native new package
private protected public return short
static super switch synchronized this
throw throws transient try void
volatile while
![Page 13: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/13.jpg)
13
Széchenyi István Egyetem
Kifejezések, operátorok
prefix – az operátor az operandus előtt áll, postfix – az operátor az operandus után áll, vagy infix jellegű – az operátor az operandusok között
helyezkedik el.
A kifejezés kiértékelése a műveleti jelek közötti precedencia szabály alapján következik
![Page 14: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/14.jpg)
14
Széchenyi István Egyetem
Precedencia
Operátor Megnevezés[ ] tömb indexelés
. tagelérés pl: java.lang.Math.PI
( ) zárójeles kifejezés
kif++ kif-- postfix operátorok
++kif --kif +kif –kif prefix operátorok
! ~ logikai NEM, bitenkénti NEM
new példányosítás
(típus)kif típuskényszerítés
* / % aritmetikai műveletek
+ -
<< eltolás balra, a legkisebb bit 0-t kap
>> eltolás jobbra, és balról a legmagasabb helyiértékű bit értéke kerül be
>>> eltolás jobbra, balról 0 érkezik.
![Page 15: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/15.jpg)
15
Széchenyi István Egyetem
PrecedenciaOperátor Megnevezés
< > <= >= összehasonlítások
instaceof az objektum példánya-e az osztálynak
== != egyenlőségvizsgálatok (referencia összehasonlítás)
& bitenkénti ÉS
^ bitenkénti kizáró VAGY
| bitenkénti VAGY
&& logikai ÉS
|| logikai VAGY
? : feltételes kifejezés
= += -= *= /= %= hozzárendelés, értékadás
>>= <<= >>>= bit szintű értékadások
&= ^= |=
![Page 16: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/16.jpg)
16
Széchenyi István Egyetem
Referenciák, példányosítás
A „példányok” - „objektumok” típusa Minden objektum, tömb, felsorolás ilyen A referencia != mutató, (kicsit több annál :)
Pl: Osztálytípus peldánynév;Teglalap t1;String szoveg1;String szoveg2 = new String(”Béla”);Teglalap t2 = new Teglalap(3,4);
A null referenciaszoveg1 = null;
![Page 17: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/17.jpg)
17
Széchenyi István Egyetem
Hozzáférési kategóriák (adatrejtés)
nyilvános tagok (public) csomag-szintű tagok (jelöletlen) védett tagok (protected) privát tagok (private)
![Page 18: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/18.jpg)
18
Széchenyi István Egyetem
Vezérlési szerkezetek utasítások feltételes kifejezés elágazások
if if-else if-else-if… switch
ciklusok while do-while for
![Page 19: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/19.jpg)
19
Széchenyi István Egyetem
Feltételes kifejezésekif(<logikai kif.>) <utasítás>; (vagy utasítás blokk);
if(<felt.>) {<utasítás;>}else{<utasítás;>}
if(<felt.>) {<utasítás;>}else if(<felt.2>) {<utasítás;>}else {<utasítás;>}
switch(<argumentum>){ case <érték1>: utasítás(ok); break; case <értékn>: utasítás(ok); break; default: utasítás(ok);}
<argumentum>: megszámlálható típus, (java 7-től: String is!)
![Page 20: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/20.jpg)
20
Széchenyi István Egyetem
Elöl- és hátultesztelő ciklusokwhile: while (<kifejezés igaz>) {
<utasítások;> }
while (i < 5) { sum += tomb[i]; i++; }
do-while: do{
<utasítások;> }while (<kifejezés igaz>)
do {i++;nameArray[i] = ””; } while (i != lastIndex);
PÉLDA demo
![Page 21: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/21.jpg)
21
Széchenyi István Egyetem
A tömb adattípus
![Page 22: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/22.jpg)
22
Széchenyi István Egyetem
Tömbök deklarációja
<elemtípus>[] <tömbazonosító>; <elemtípus> <tömbazonosító>[];
int cT[], d; //„d” egyetlen elemi adat!!! Alkalmazott[] dolgozok; ”int a[3];” -> fordítási hibát okoz!!
![Page 23: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/23.jpg)
23
Széchenyi István Egyetem
Tömbök létrehozása
new <elemtípus> [méret]; iT = new int[365];dT = new double[365/12]; //30!sT = new String[4];
![Page 24: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/24.jpg)
24
Széchenyi István Egyetem
Tömbök helyfoglalása
short [] aTomb = new short[10];for(int i=0; i < aTomb.length; i++){aTomb[i] = i*5;}
![Page 25: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/25.jpg)
25
Széchenyi István Egyetem
Tömbök deklarálása inicializáló blokkban<elemtípus> [] <tömbazonosító> = { <érték0>, <érték1>, …};
int[] aTomb = {1, 2, 3, 7, 11 };
char[] maganh = { ’a’, ’e’, ’i’, ’o’, ’u’};
boolean[] valaszok = { true, true, false};
double[] arak = {1202.1, 33.35};
![Page 26: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/26.jpg)
26
Széchenyi István Egyetem
Többdimenziós tömbök
<elemtípus>[][] <tömbazonosító>;
Egy 2 dimenziós tömb deklarációja:
double [][] a;
A 2 dimenziós tömb létrehozása:
a = new double[2][3];
![Page 27: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/27.jpg)
27
Széchenyi István Egyetem
Többdimenziós tömb megadása inicializáló blokkal
<elemtípus> [][] <tömbazonosító> = { {<érték0>, <érték1>, …} , {<érték0>, <érték1>, …} , …};
int[][] honapNapjai = {
{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};
![Page 28: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/28.jpg)
28
Széchenyi István Egyetem
Többdimenziós tömbök helyfoglalása
int[][] honapNapjai = {
{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};
![Page 29: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/29.jpg)
29
Széchenyi István Egyetem
Többdimenziós tömbök egyéb esetei
Megadható különböző méretű, több lépésben létrehozott többdimenziós tömb is:
int[][] alsoMatrix = new int[3][]; for (int i=0; i < alsoMatrix.length; i++ ){alsoMatrix[i] = new int[i+1];for (int j=0; j < alsoMatrix[i].length; j++ ){
alsoMatrix[i][j] = 1;}
![Page 30: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/30.jpg)
30
Széchenyi István Egyetem
Objektumokból képzett tömbökObejektumtípus [] azon = new Objektumtípus[n];
String [] honapok = new String[12];
vagy inicializátorral:
String [] honapok = {”január”, ”február”, …};
![Page 31: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/31.jpg)
31
Széchenyi István Egyetem
Tömbök bejárása 1
for (<inic.> ; <log.kif.> ; <lépt.>){<ut.>}int i = 0 ;
for ( ; i < 10; i++) { a[i] = 0;}
for(int i = 0; i < 10; i++) { a[i] = 0;}
for(int i = 0; i < 10; ) {a[i] = 0;i++; }
for(int i=0, j=10; i<=j; i++, j--){ szamlalo++;}
for(int i=start+newList;i<=followBitSum;i+=2){utasítások ;}
![Page 32: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/32.jpg)
32
Széchenyi István Egyetem
Tömbök bejárása 2
for (<típus> <elem> : <tömb>){}
int total = 0;int t[] = new int[10];…for(int i: t){ total += i;}
![Page 33: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/33.jpg)
33
Széchenyi István Egyetem
Szöveges adatok kezeléseA String osztály
![Page 34: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/34.jpg)
34
Széchenyi István Egyetem
Karakteres típusok
'a', '\t', '\b',.... – karakteres konstans char – alaptípusKarakterekből képzett tömbök:char sor[] = new char[50];Feldolgozásuk: C nyelvhez hasonlóan
![Page 35: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/35.jpg)
35
Széchenyi István Egyetem
Sztringkezelés Egy új, önálló osztály a szöveges adatok kezelésére, együttműködés az alaptípusokkal, automatikus konverzióban használható, a String osztály használata
String szov1 = new String(”első szöveg”);
String szov2 = ”második szöveg”;
String szov3 = ”Eredmény =”+3”;
Konstans karakterláncok kezelése. Hatékony és gyors karakterlánc kezelés. Egyszerű műveletek és metódusok.
![Page 36: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/36.jpg)
36
Széchenyi István Egyetem
Sztringkezelés
Alapműveletek: length(), charAt(i), getBytes(), split(string,delim), toCharArray(), valueOf(g,i), substring(i,db)
Csak kevés módosító művelete van: concat(g), replace(mit, mire), toLowerCase(), toUpperCase(), trim().
![Page 37: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/37.jpg)
37
Széchenyi István Egyetem
Sztringkezelés – módosítható szöveges adatok A StringBuffer osztály
String – StringBuffer átalakítás oda-visszahozzáfűzés, beszúrás (append, insert)rövidítés, bővítésmegfordítható (reverse)karakterek, réssztringek törölhetők
![Page 38: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/38.jpg)
38
Széchenyi István Egyetem
StringBuffer (StringBuilder)
Metódusai:capacity(), length(), charAt(i),indexOf(g), lastIndexOf(g)append(g), delete(i1, i2), insert(iPosn, g), getChars(i),setCharAt(iposn, c), substring(), replace(i1,i2,gvalue), reverse(),trimToSize(), toString(g)
![Page 39: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/39.jpg)
39
Széchenyi István Egyetem
Szövegek darabolása – split metódus, StringTokenizerGyakori feladat a szövegek szétdarabolása fehér karakterek mentén:1. String osztály split metódus String[] eredmeny = "Egy darabolási teszt feladat".split("\\s");
for (int x=0; x<eredmeny.length; x++) System.out.println(eredmeny[x]);
(reguláris kifejezések!)2. StringTokenizer osztály
Később tárgyaljuk (a java.util csomagnál)!
StringTokenizer st = new StringTokenizer("Egy darabolási teszt"); while (st.hasMoreTokens()) { System.out.println(st.nextToken()); }
![Page 40: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/40.jpg)
40
Széchenyi István Egyetem
Csomagoló (burkoló) osztályok
∀ elemi típushoz ∃ egy ún. csomagoló osztály: Boolean, Character, Integer, Long, Float, Double
Az adott típusú értéket egy objektumban helyezi el, amely ezután referenciaként érhető el:
+ : összetett adatszerkezetekben hatékonyabban használhatóak, elérhetőek egyes speciális műveletek
– : helypazarló Példa:
Float f = new Float(3.14);int n = Integer.parseInt(”1234”);
![Page 41: Objektum orientált programozás - szt1.sze.huszt1.sze.hu/java/ea/prog3_ea_2011_02.pdf · 2 Széchenyi István Egyetem A Java nyelv fő jellemzői Egyszerű Objektumorientált Elosztott](https://reader033.fdocument.pub/reader033/viewer/2022052319/5a78be647f8b9aa17b8be602/html5/thumbnails/41.jpg)
41
Széchenyi István Egyetem
Csomagoló osztályok