BigInteger Java: rad s velikim brojevima

Java jezik uglavnom se koristi za pisanje velikih korporativnih web aplikacija. Međutim, primjenjivat će se i druga predmetna područja, gdje je često potrebno raditi s vrlo velikim brojem. Iako Java ima primitivne tipove, postoje situacije u kojima nisu dovoljne.

Poznato je da svi primitivi imaju jednu neugodnu osobinu - tip preljeva, u kojem izlaz izvan dopuštenih vrijednosti dovodi do pogrešnih izračuna. Za to postoji posebna BigInteger klasa. Java ne bi bila Java ako ne bi imala zasebnu klasu s funkcionalnošću i za ovaj slučaj. Razmotrimo ga detaljnije.


BigInteger Java klasa: opis

Kao što ste već razumjeli, BigInteger klasa služi kao ljuska za velike cjelobrojne vrijednosti. Za enkapsuliranje broja objekata ove vrste, možete koristiti jedno od preopterećenja njegovih konstruktora ili statičku vrijednost metodeOf. Konstruktor kao argument može prihvatiti niz ili niz bajtova. U BigInteger Javi, statička valueOf metoda se koristi za pretvaranje cjelobrojnih tipova koji predstavljaju cijele brojeve. Budući da Java nema sposobnost preopterećenja operatora, za izvođenje matematičkih operacija na vrijednostima enkapsuliranim u ovoj klasi, osigurane su odgovarajuće metode. O njima će i dalje govoriti.

Java BigInteger: metode i primjeri njihove uporabe

Ova klasa ima u svom arsenalu mnoge metode koje vam omogućuju manipuliranje numeričkim vrijednostima i obavljanje raznih matematičkih operacija na njima. Ispod je popis tihmetode.



Razmotrite metode koje izvode aritmetičke operacije: - add (value) - izvršava dodavanje vrijednosti trenutnog objekta, s proslijeđenim argumentom; - oduzimanje (oduzimanje) - oduzima oduzimanje od trenutne vrijednosti; - množiti (vrijednost) - izvodi množenje; - divide (divider) - dijeli trenutnu vrijednost na razdjelnik; - pow (int arg) - smanjuje vrijednost objekta na vrijednost arg; - abs () - vraća apsolutnu vrijednost nazvanog objekta; - negate () - vraća BigInteger objekt čija vrijednost ima suprotan znak. Pogledajmo jednostavan primjer izvršavanja aritmetičke operacije na dvije vrijednosti enkapsulirane u objektu: - BigInteger val1 val2 dodavanje, dijeljenje, suprotnoSign; - val1 = novi BigInteger ("5"); - val2 = BigInteger.valueOf
; - dodavanje = val1.add (val2); - dijeljenje = val2.divide (val1); - suprotnoSign = val1.negate (); Obratite pozornost na način stvaranja objekata. Varijabla val1 je inicijalizirana korištenjem konstruktora koji je prihvatio niz i zadržao vrijednost 5. val2 ima vrijednost 10 kao rezultat statičke vrijednosti metodeOf. Vrijednost dodane varijable rezultat je dodavanja prve dvije varijable i jednaka je 15. U skladu s tim, varijabla dijeljenja zadržava rezultat oduzimanja. SuprotnoSign jednako je val1 s suprotnim predznakom, tj. -5.

Zaključak

Kao što možete vidjeti, BigInteger Java klasa pruža razne alate za operacije s velikim brojevima. U isto vrijeme, prenapučenost tipova je isključena, jer sigurnost u Javi ima jedan od najviših prioriteta, naravno, bez ugrožavanja funkcionalnosti.

Povezane publikacije