A Java nyelvet főleg az íráshoz használják.nagyvállalati webes alkalmazások. Ugyanakkor alkalmazható más tantárgyakra is, ahol gyakran nagyon sok emberrel kell dolgozni. Noha a Java primitív típusokkal rendelkezik, vannak olyan helyzetek, ahol nem elég.
Ismert, hogy minden primitívnek van egyKellemetlen tulajdonság a típus túlcsordulása, amelyben a megengedett értékek túllépése téves számításokhoz vezet. Van egy speciális BigInteger osztály erre. A Java nem lenne Java, ha ebben az esetben nem lenne külön osztály, funkcionalitással. Nézzük meg részletesebben.
Mint már megértetted, a BigInteger osztály szolgálburkoló nagy egész értékekhez. Egy szám beágyazására egy ilyen típusú objektumban használhatja annak konstruktorainak egyik túlterhelését vagy a statikus módszer értékét. A konstruktor argumentumként karakterláncot vagy bájt tömböt vehet fel. A BigInteger Java statikus valueOf módszerrel konvertálja az egész számot képviselő egyszerű típusokat.
Mivel a Java-ban a túlterhelés lehetőségeNincsenek operátorok: ahhoz, hogy matematikai műveleteket végezzenek az ebbe az osztályba beillesztett értékekre, a megfelelő módszereket biztosítják. Ezeket további tárgyaljuk.
Ennek az osztálynak az arzenáljában sok vanolyan módszerek, amelyek lehetővé teszik a numerikus értékek manipulálását és különféle matematikai műveletek elvégzését rajtuk. Az alábbiakban felsoroljuk ezeket a módszereket.
Elemezzük a számtani műveleteket végrehajtó módszereket:
- add (value) - elvégzi az aktuális objektum értékeinek összeadását, argumentumként átadott értékkel;
- kivonás (kivonó) - elvégzi a kivonást az aktuális értékből;
- szorzás (érték) - elvégzi a szorzást;
- osztás (elválasztó) - elvégzi az aktuális érték osztását;
- pow (int arg) - növeli a hívó objektum értékét, az arg értéket;
- abs () - a hívó abszolút értékét adja vissza;
- negate () - egy BigInteger objektumot ad vissza, amelynek értéke ellentétes jellel rendelkezik.
Nézzünk meg egy egyszerű példát egy aritmetikai művelet végrehajtására egy objektumba beágyazott két értékre:
- BigInteger val1, val2, hozzáadása, osztása, ellenkezőjeSign;
- val1 = új BigInteger („5”);
- val2 = BigInteger.valueOf (10);
- hozzáadva = val1.add (val2);
- osztva = val2.divide (val1);
- opposSign = val1.negate ();
Vegye figyelembe az objektumok létrehozásának módját.A val1 változót inicializáltuk annak a konstruktornak a segítségével, amely a húrot vett, és az 5. értéket tárolja. A val2 értéke 10, a statikus módszer értékének eredményeként. Az összeadódó változó értéke az első két változó összeadásának eredménye, és egyenlő 15-vel. Az ennek megfelelően osztódó változó az kivonás eredményét tárolja. EllenkezőSign megegyezik a val1 értékével, az ellenkező jellel, azaz -5.
Mint láthatja, a BigInteger Java osztály biztosítjakülönféle eszközök nagyon nagy számú művelethez. Ebben az esetben a típus túlcsordulása kizárt, mivel a Java biztonsága az egyik legfontosabb prioritás, természetesen a funkcionalitás veszélyeztetése nélkül.