Vodič za klasu brojeva u Javi
1. Pregled
U ovom uputstvu razgovarat ćemo o Javi Broj csnajka. Prvi, naučit ćemošto Klasa brojeva radi i koje metode sadrži. Zatim ćemo zaroniti u razne implementacije ovoga sažetak razred.
2. Broj Razred
Broj je asažetak razred u java.lang paket. Razne potklase proširuju Broj razred. Najčešće korišteni su:
- Bajt
- Kratak
- Cijeli broj
- Dugo
- Dvostruko
- Plutati
Glavna svrha ove klase je pružiti metode za pretvaranje predmetne numeričke vrijednosti u razne primitivne tipove kao što su bajt, kratak, int, dugo, dvostruko, i plutati.
Četiri sažetak Dostupne su metode koje pomažu u izvršavanju zadatka:
- intValue ()
- longValue ()
- doubleValue ()
- floatValue ()
Broj također ima dvije konkretne metode, byteValue () i kratka vrijednost (), koji će vratiti bajt vrijednost i kratak vrijednost određenog broja. Da biste saznali više o različitim implementacijama Broj klase, pogledajte naš članak o Omotavajućim tečajevima.
U sljedećim odjeljcima saznat ćemo više o tim metodama i njihovoj upotrebi.
3. Konkretne metode
Razmotrimo konkretne metode jednu po jednu.
3.1. kratka vrijednost()
Kao što i samo ime govori, ova metoda pretvara navedeno Broj objekt u primitiv kratak vrijednost.
Zadana implementacija baca int vrijednost u kratak i vraća ga. Međutim, podrazredi imaju vlastite implementacije i u njih se ubacuju odgovarajuće vrijednosti kratak a zatim se vratiti.
Evo kako a Dvostruko vrijednost se pretvara u kratak primitivni tip:
@Test javna praznina givenDoubleValue_whenShortValueUsed_thenShortValueReturned () {Double doubleValue = Double.valueOf (9999.999); assertEquals (9999, doubleValue.shortValue ()); }
3.2. byteValue ()
Ova metoda vraća vrijednost navedenog Broj objekt kao a bajt vrijednost. Unatoč tome, dječje klase Broj razreda imaju vlastite implementacije.
Evo kako Plutati vrijednost se može pretvoriti u bajt vrijednost:
@Test javna praznina givenFloatValue_whenByteValueUsed_thenByteValueReturned () {Float floatValue = Float.valueOf (101.99F); assertEquals (101, floatValue.byteValue ()); }
4. Apstraktne metode
Uz to, Broj razred također ima nekoliko apstraktnih metoda i nekoliko podrazreda koji ih primjenjuju.
U ovom ćemo odlomku na brzinu pogledati kako se koriste ove metode.
4.1. intValue ()
Ova metoda vraća int predstavljanje Broj u kontekstu.
Pogledajmo kako a Dugo vrijednost se može promijeniti u int:
@Test javna praznina givenLongValue_whenInitValueUsed_thenInitValueReturned () {Long longValue = Long.valueOf (1000L); assertEquals (1000, longValue.intValue ()); }
Svakako, prevodilac ovdje izvodi operaciju suženja pretvarajući a dugo vrijednost u int.
4.2. longValue ()
Ova metoda će vratiti vrijednost Number navedeno kao a dugo.
U ovom primjeru vidimo kako an Cijeli broj vrijednost se pretvara u dugo putem Cijeli broj razred:
@Test javna praznina givenIntegerValue_whenLongValueUsed_thenLongValueReturned () {Integer integerValue = Integer.valueOf (100); assertEquals (100, integerValue.longValue ()); }
Za razliku od intValue () metoda, longValue () vraća dugo vrijednost nakon proširene primitivne pretvorbe.
4.3. floatValue ()
Ovu metodu možemo koristiti za vraćanje vrijednosti navedenog Number kao plutati. Pogledajmo kako a Kratak vrijednost se može pretvoriti u plutati vrijednost:
@Test javna praznina givenShortValue_whenFloatValueUsed_thenFloatValueReturned () {Short shortValue = Short.valueOf (127); assertEquals (127,0F, shortValue.floatValue (), 0); }
Također, longValue () i floatValue () također izvršiti proširenje primitivne pretvorbe.
4.4. doubleValue ()
Konačno, ova metoda pretvara vrijednost zadanog Broj razred do dvostruko primitivni tip podataka i vraća ga.
Evo primjera korištenja ove metode za pretvaranje a Bajt do dvostruko:
@Test javna praznina givenByteValue_whenDoubleValueUsed_thenDoubleValueReturned () {Byte byteValue = Byte.valueOf (120); assertEquals (120,0, byteValue.doubleValue (), 0); }
5. Zaključak
U ovom smo brzom vodiču pogledali neke od najvažnijih metoda u Broj razred.
Konačno, pokazali smo kako se ove metode mogu koristiti u raznim Omot razreda.
Kao i uvijek, puni izvorni kôd članka dostupan je na GitHub-u.