A Byte, a Short, az Integer, a Long, a Float és a Double osztály




Download 1.08 Mb.
bet18/51
Sana07.04.2017
Hajmi1.08 Mb.
#3295
1   ...   14   15   16   17   18   19   20   21   ...   51

A Byte, a Short, az Integer, a Long, a Float és a Double osztály


Ezen osztályok mind a Number osztályból származnak, amely a számokat kezelő osztályok őse. A Number őstől örökölt kényszer szerint van hat metódusuk, amely a burkoló osztály által hordozott szám primitív típusát adja vissza:

view plaincopy to clipboardprint?

  1.     Double szám = new Double(3.141592653589793);  

  2.     System.out.println(szám.doubleValue());  

  3.     System.out.println(szám.floatValue());  

  4.     System.out.println(szám.longValue());  

  5.     System.out.println(szám.intValue());  

  6.     System.out.println(szám.shortValue());  

  7.     System.out.println(szám.byteValue());  

  8.      

  9.     szám = Double.parseDouble("2.718281828459045");  

  10.     System.out.println(szám.doubleValue());  

  11.     System.out.println(szám.floatValue());  

  12.     System.out.println(szám.longValue());  

  13.     System.out.println(szám.intValue());  

  14.     System.out.println(szám.shortValue());  

  15.     System.out.println(szám.byteValue());  

A fenti programrészlet eredménye:

view plaincopy to clipboardprint?

  1. 3.141592653589793  

  2. 3.1415927  

  3. 3  

  4. 3  

  5. 3  

  6. 3  

  7. 2.718281828459045  

  8. 2.7182817  

  9. 2  

  10. 2  

  11. 2  

  12. 2  

Mint látható, a valós számot hordozó Double esetén az egész számra való alakítás is megtörténik, ha egész típusú primitív típust kérek el, azonban az átalakítás során csonkolás történik (eltűnik a tizedespont mögötti számsor), nem pedig kerekítés!

Ezek az osztályok már több műveletet is lehetővé tesznek, nekünk azonban egyelőre elég a valueOf ismerete, amely szöveges formából alakít számmá, akárcsak a Boolean esetén:



view plaincopy to clipboardprint?

  1.     szám = Double.valueOf("-2");  

  2.     System.out.println(szám);  

  3.     szám = Double.valueOf("-2.2E3");  

  4.     System.out.println(szám);  

  5.     szám = Double.valueOf("-2.2E3000");  

  6.     System.out.println(szám);  

  7.     System.out.println(szám.isInfinite());  

Ennek eredménye:

view plaincopy to clipboardprint?

  1. -2.0  

  2. -2200.0  

  3. -Infinity  

  4. true  

Fontos, hogy a valós típusoknak lehet negatív és pozitív végtelen értéke - ha túl nagy számot szeretnénk szöveges formából átalakítani vagy a művelet eredménye túl nagy, ezt lekérdezhetjük az isInfinite metódussal.

Download 1.08 Mb.
1   ...   14   15   16   17   18   19   20   21   ...   51




Download 1.08 Mb.

Bosh sahifa
Aloqalar

    Bosh sahifa



A Byte, a Short, az Integer, a Long, a Float és a Double osztály

Download 1.08 Mb.