Függvények, metóduok¶
Ahogyan a Python anyagrészben már megtanultuk, természetesen a Java nyelvben is lehetőségünk van különbőző függvényeket, metódusokat létrehozni.
Beépített függvények¶
A beépített függvényeknek az előnye, hogy nem szükséges semmit importálnunk, alapból tartalmazza a fordító
Matematikai¶
Főbb matematikai függvények:
Függvény | Példa | Leírás |
---|---|---|
Math.abs(x) | Math.abs(-5) |
Egy szám abszolútértéke |
Math.max(x, y) | Math.max(5, 6) |
Két szám maximuma |
Math.min(x, y) | Math.min(5, 6) |
Két szám minimuma |
Math.sqrt(x) | Math.sqrt(25) |
Egy szám négyzetgyöke |
Math.random() | Math.random() |
Véletlen szám 0 és 1 között |
Math.pow(x, y) | Math.pow(2, 3) |
Egy szám hatványa |
Math.sin(x) | Math.sin(0) |
Egy szám szinusz értéke |
Math.cos(x) | Math.cos(0) |
Egy szám koszinusz értéke |
Math.tan(x) | Math.tan(0) |
Egy szám tangens értéke |
Math.log(x) | Math.log(1) |
Egy szám logaritmus értéke |
Math.log10(x) | Math.log10(1) |
Egy szám 10-es logaritmus értéke |
Math.round(x) | Math.round(1.5) |
Egy szám matematikai kerekítése |
Math.floor(x) | Math.floor(1.5) |
Egy szám lefelé kerekítése |
Math.ceil(x) | Math.ceil(1.5) |
Egy szám felfelé kerekítése |
Math.PI | Math.PI |
PI értéke |
String¶
A beépített String függvények lehetőséget biztosítanak a szövegek manipulálására.
Az alábbi példák teszteléséhez hozzunk létre egy változót:
A változó neve után tegyünk .
karaktert, majd adjuk meg a függvény nevét, majd zárójelek között a paramétereket.
Főbb String függvények:
Függvény | Példa | Leírás |
---|---|---|
length() | example.length() |
Szöveg hosszának lekérdezése |
toUpperCase() | example.toUpperCase() |
Szöveg nagybetűssé alakítása |
toLowerCase() | example.toLowerCase() |
Szöveg kisbetűssé alakítása |
replace(x, y) | example.replace("Példa", "Másik") |
Szövegben x szöveg y szövegre cserélése |
substring(x, y) | example.substring(0, 5) |
Szöveg x és y közötti részének kivágása |
indexOf(x) | example.indexOf("P") |
Szövegben x szöveg első előfordulásának indexe |
split(x) | example.split(" ") |
Szöveg x szöveg mentén történő szétválasztása |
trim() | example.trim() |
Szöveg elején és végén lévő felesleges szóközök eltávolítása |
startsWith(x) | example.startsWith("P") |
Szöveg x szöveggel kezdődik-e |
endsWith(x) | example.endsWith("g") |
Szöveg x szöveggel végződik-e |
contains(x) | example.contains("P") |
Szöveg x szöveget tartalmazza-e |
equals(x) | example.equals("Példa szöveg") |
Szöveg x szöveggel megegyezik-e |
repeat(x) | example.repeat(2) |
Szöveg x számú ismétlése |
charAt(x) | example.charAt(0) |
Szöveg x indexű karaktere |
Szám kerekítése¶
A Java-ban a legegyszerűbb módszer egy szám két tizedesjegyre történő kerekítésére a String.format()
metódus használata.
Karakter¶
A beépített karakter függvények lehetőséget biztosítanak a karakterek manipulálására.
Az alábbi példák teszteléséhez hozzunk létre egy változót:
Figyelem
A karaktereket a char
típusú változókban tároljuk, és a karaktereket aposztrófok ('
) között adjuk meg.
Főbb karakter függvények:
Függvény | Példa | Leírás |
---|---|---|
isDigit | Character.isDigit('a') |
Karakter szám-e |
isLetter | Character.isLetter('a') |
Karakter betű-e |
isLowerCase | Character.isLowerCase('a') |
Karakter kisbetű-e |
isUpperCase | Character.isUpperCase('A') |
Karakter nagybetű-e |
toLowerCase | Character.toLowerCase('A') |
Karakter kisbetűvé alakítása |
toUpperCase | Character.toUpperCase('a') |
Karakter nagybetűvé alakítása |
isWhitespace | Character.isWhitespace(' ') |
Karakter szóköz-e |
getNumericValue | Character.getNumericValue('1') |
Karakter számértéke |
Példa
char betu = 'a';
System.out.println(Character.isDigit(betu)); // false
System.out.println(Character.isLetter(betu)); // true
System.out.println(Character.isLowerCase(betu)); // true
System.out.println(Character.isUpperCase(betu)); // false
System.out.println(Character.toLowerCase(betu)); // a
System.out.println(Character.toUpperCase(betu)); // A
System.out.println(Character.isWhitespace(betu)); // false
System.out.println(Character.getNumericValue(betu)); // -1
Dátum és idő¶
Java nyelven a dátum- és időkezelés elengedhetetlen része a modern alkalmazásoknak. Az alábbiakban a Java dátumkezelésének legfontosabb aspektusait mutatom be röviden.
A java.time csomag részeként bevezetett LocalDate
, LocalTime
, és LocalDateTime
osztályok a dátum és idő kezelésének modern megközelítését biztosítják.
Dátum¶
A LocalDate
osztály segítségével tudunk dátumokat kezelni.
Ebben az osztályban csak a dátumot tároljuk, azaz az évet, a hónapot és a napot.
Példa
Dátum létrehozása általunk megadott értékek alapján:
Aktuális dátum lekérdezése:
Nincs mindig szükségünk a teljes dátumra, ilyenkor használhatjuk a beépített függvényeket. A fenti date
változó alábbi részeit tudjuk lekérdezni:
Metódus | Leírás | Példakód |
---|---|---|
getYear() | Az év lekérdezése | date.getYear() |
getMonth() | A hónap lekérdezése | date.getMonth() |
getMonthValue() | A hónap számmal kifejezve | date.getMonthValue() |
getDayOfMonth() | A hónap napjának lekérdezése | date.getDayOfMonth() |
getDayOfWeek() | A hét napjának lekérdezése | date.getDayOfWeek() |
getDayOfYear() | Az év napjának lekérdezése | date.getDayOfYear() |
Példa
Kérjük ki az aktuális évet és írjuk ki a konzolra!
Vannak esetek amikor módosítanunk kell a dátumot, ezt az alábbi függvények segítségével tehetjük meg:
Metódus | Leírás | Példakód |
---|---|---|
plusYears() | Évek hozzáadása | date.plusYears(2) |
plusMonths() | Hónapok hozzáadása | date.plusMonths(3) |
plusDays() | Napok hozzáadása | date.plusDays(7) |
minusYears() | Évek levonása | date.minusYears(1) |
minusMonths() | Hónapok levonása | date.minusMonths(6) |
minusDays() | Napok levonása | date.minusDays(10) |
Ezekkel a metódusokkal egyszerűen módosíthatod a LocalDate
objektum dátumát, attól függően, hogy szükséges-e előre vagy hátra lépni az időben. Az évek, hónapok és napok hozzáadása vagy levonása segítségével a programozók finoman szabályozhatják a dátumokat a különféle alkalmazásokban.
Példa
Idő¶
A LocalTime
osztály segítségével tudunk időpontokat kezelni.
Ebben az osztályban csak az időpontot tároljuk, azaz az órát, a percet, a másodpercet és a nanoszekundumokat.
Példa
Időpont létrehozása általunk megadott értékek alapján:
Aktuális idő lekérdezése a rendszeróra alapján:
Nincs mindig szükségünk a teljes időre, ilyenkor használhatjuk a beépített függvényeket.
A fenti time
változó alábbi részeit tudjuk lekérdezni:
Metódus | Leírás | Példakód |
---|---|---|
getHour() | Az óra | time.getHour() |
getMinute() | A perc | time.getMinute() |
getSecond() | A másodperc | time.getSecond() |
getNano() | A másodperc nanoszekundumai | time.getNano() |
toSecondOfDay() | Éjféltől számított másodpercek | time.toSecondOfDay() |
Példa
Kérjük ki az aktuális órát és írjuk ki a konzolra!
Vannak esetek amikor módosítanunk kell az időt, ezt az alábbi függvények segítségével tehetjük meg:
Metódus | Leírás | Példakód |
---|---|---|
plusHours() | Órák hozzáadása | time.plusHours(2) |
plusMinutes() | Percek hozzáadása | time.plusMinutes(30) |
plusSeconds() | Másodpercek hozzáadása | time.plusSeconds(45) |
plusNanos() | Nanoszekundumok hozzáadása | time.plusNanos(1000000) |
minusHours() | Órák levonása | time.minusHours(1) |
minusMinutes() | Percek levonása | time.minusMinutes(15) |
minusSeconds() | Másodpercek levonása | time.minusSeconds(30) |
minusNanos() | Nanoszekundumok levonása | time.minusNanos(500000) |
Példa
Dátum és idő¶
A LocalDateTime
osztály segítségével tudunk dátumokat és időpontokat kezelni.
Ebben az osztályban a dátumot és az időpontot is tároljuk, tehát ötvözi a LocalDate
és a LocalTime
osztályokat.
Dátum és idő létrehozása¶
A LocalDateTime
osztály of()
metódusával tudunk dátumot és időpontot létrehozni.
Aktuális dátum és idő lekérdezése:
Dátum és idő lekérdezése¶
A LocalDateTime
osztály get()
metódusával tudjuk lekérdezni a dátum és idő részeit.
int year = dateTime.getYear();
int month = dateTime.getMonthValue();
int day = dateTime.getDayOfMonth();
int hour = dateTime.getHour();
int minute = dateTime.getMinute();
int second = dateTime.getSecond();
Dátum és idő módosítása¶
A LocalDateTime
osztály plus()
és minus()
metódusaival tudjuk módosítani a dátumot és időpontot.
Feladatok¶
Olvassunk be a standard inputról neveket vesszővel elválasztva, majd írjuk ki őket egymás alá!
Saját függvények¶
Saját függvények létrehozásához a következő szintaxist kell használnunk:
Szintaxis
Figyelem
A függvényeket a main
függvényen kívül kell létrehozni.