1. Egész literálok
És most egy új érdekes témáról - szó szerint. A közvetlenül a programkódba írt adatokat literáloknak nevezzük . Nem régi adatokról beszélünk, hanem a primitív típusok és a String
típus értékeiről.
Tegyük fel például, hogy a következő kóddal rendelkezik:
Kód | Szó szerint |
---|---|
|
|
Ebben a kódban a literálok5
a szám , a szám 10
és a " Sum =
" karakterlánc.
A Java nyelven mindennek van típusa, beleértve a literálokat is. Alapértelmezés szerint a kódban szereplő összes egész literál (egész szám) ints
. Az int típus a szabványos Java egész típus.
Sőt, ha úgy döntesz, hogy egy bájtváltozóhoz vagy egy rövid változóhoz integer literált rendelsz, akkor nem lesz probléma. Csak meg kell győződnie arról, hogy a literális érték azon az értékeken belül van, amelyeket a változó típusa tárolhat.
A Java fordító elég okos ahhoz, hogy megértse, hogy egy byte
változóhoz probléma nélkül hozzá lehet rendelni a 100-at.
Példák:
Kód | Leírás |
---|---|
|
Ez jól fog összeállni. |
|
Ez jól fog összeállni. |
|
Fordítási hiba lesz, mert a maximális bájtérték 127. |
long
A kódodba literálokat is írhatsz . Ehhez adja hozzá a latin „L” vagy „l” betűt az egész szám végéhez.
Példák:
Kód | Leírás |
---|---|
|
Ez jól fog összeállni. |
|
Összeállítási hiba: 3 milliárd túl nagy egy int literálhoz. |
|
Fordítási hiba: a literál hosszú, de a változó int. Ráadásul 3 milliárd több, mint a maximális int. |
Észrevette, hogy milyen nehéz nagy, 10 vagy több számjegyből álló számokat olvasni? Nem lehet azonnal megmondani, hogy a kódban 3 milliárd vagy 30 milliárd szerepel. A kód olvashatóbbá tétele érdekében (és ez fontos!), a Java lehetővé teszi aláhúzásjelek beszúrását a numerikus literálokba (ezek nem befolyásolják a szám értékét).
A fenti példa átírható aláhúzásjelekkel, hogy egy kicsit világosabb legyen:
Kód | Leírás |
---|---|
|
Ez jól fog összeállni. |
|
Összeállítási hiba: 3 milliárd túl nagy egy int literálhoz. |
|
Fordítási hiba: a literál hosszú, de a változó int. Ráadásul 3 milliárd több, mint a maximális int. |
De nem használhatunk vesszőt a numerikus literálokban, mert már más célra használják. Például az argumentumok egymástól való elválasztására metódus hívásakor.
2. Valós számliterálok
A kódban nem csak egész számokat, hanem lebegőpontos literálokat (valós számokat) is megadhat.
Valójában a szabály nagyon egyszerű: ha a kódban egy számban van tizedesvessző, akkor a szám lebegőpontos literál. És nem akármilyen szó szerinti, hanem double
szó szerinti.
Létrehozhat egy lebegő literált, de ehhez az „F” (vagy „f”) betűt kell a szám végére tenni .
Példák:
Kód | Leírás |
---|---|
|
Ez jól fog összeállni. |
|
Ez jól fog összeállni. |
|
Ez jól fog összeállni. |
|
Ez jól fog összeállni. |
|
Fordítási hiba lesz: a változó float, de a literál dupla. |
Egyébként az egész literált egyszerűen lebegőpontossá vagy dupla literállá alakíthat át egyszerűen ). Példák: appending the suffix 'F' (for float
) or D (for double
)
Kód | Leírás |
---|---|
|
Ez jól fog összeállni. |
|
Ez jól fog összeállni. |
|
Fordítási hiba lesz: a változó egy int, de a literál egy double . |
A lebegőpontos literálok használhatnak tudományos jelölést : a szám előjeles részén kívül tíz hatványt is megadhat. Példa:
Szó szerinti | Matematikai jelölés | Végső érték |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3. String literálok
A kódban egész sornyi szöveget is megadhat. Annak érdekében, hogy a fordító utasítsa a karakterláncot adatként (literálként), és ne a kód részeként kezelje, a teljes karakterláncot mindkét oldalon dupla idézőjelek veszik körül.
Ha egy kódsorban több dupla idézőjel van, akkor azokat párokra osztjuk. Az első kettős idézőjel a literál kezdetét jelzi. A következő a literál végét jelzi. Az ezt követő következő ismét egy új literál kezdetét jelzi. A következő pedig a második literál végét jelenti. Stb.
Minden ilyen literál egy String
.
Példák
Kód | Magyarázat |
---|---|
|
5 literál van egy sorban. Mindegyik egyetlen + karakterből áll |
|
Ez a literál egy üres karakterlánc. Karakterek nélküli karakterlánc. |
|
Itt két literál van. Az eredmény a " " karakterlánc lesz 2+3-5 , nem egy szám |
|
Két literál is van itt. Itt nincs visszatérési nyilatkozat. |
Ha egy karakterlánc-literál túl hosszú, akkor több sorra bontható, és összeragasztható a „plusz operátorral”:
Kód | Magyarázat |
---|---|
|
Ha ezt a sort kiírja a képernyőre, akkor az összes szöveg egyetlen sorban jelenik meg! |
4. Karakterliterálok
A kódban nem csak karakterlánc-literálokat adhat meg, hanem egyedi karakterekből álló literálokat is. Ne feledje, hogy nem egyetlen karakterből álló karakterláncról beszélünk, hanem olyan literálokról, amelyek típusa char
.
A karakterláncoktól eltérően a literált egyetlen idézőjel veszi körül . Az idézőjelekben egy karakternek és csak egy karakternek kell lennie. Nem használhat üres idézőjeleket.
Példák:
Kód | Magyarázat |
---|---|
|
Egy literál, amelynek típusa char. A latin „A” betűt tartalmazza. |
|
Egy literál, amelynek típusa char. Ez tartalmazza a „@” szimbólumot |
|
Egy literál, amelynek típusa char. Japán karaktert tartalmaz. És ez is lehetséges. |
|
Egy literál, amelynek típusa char. Egy Unicode karaktert tartalmaz, amelyet a szám határozza meg. |
Az utolsó példa egy Unicode karaktert rendel hozzá egy speciális jelöléssel: először az előtagot kapjuk \u
, amelyet 4 hexadecimális karakter követ. A következő leckék részletes információkat tartalmaznak erről.
GO TO FULL VERSION