BigInteger Java: práce s velkými čísly
Jazyk Java se používá hlavně pro psaní velkých podnikových webových aplikací. Platí to i pro jiné oblasti, kde je často nutné pracovat velmi velkých čísel.
Přestože Java má primitivní typy, existují situace, kdy nestačí.Je známo, že všechny primitivy mají jednu nepříjemnou vlastnost - přetečení typu, při kterém překročení povolených hodnot vede k nesprávným výpočtům. K tomu je speciální třída s názvem BigInteger. Java by nebyla Java, pokud by neměla samostatnou třídu s funkčností pro tento případ. Zvažme to podrobněji.
Třída Java třídy BigInteger: popis
Jak jste již věděli, třída BigInteger slouží jako obal pro velké celočíselné hodnoty. Chcete-li zapsat číslo do objektu tohoto typu, můžete použít jedno z přetížení jeho konstruktorů nebo metodu statické hodnotyOf. Konstruktor může vzít řetězec nebo pole bajtů jako argument. Chcete-li převést jednoduché typy, které reprezentují celá čísla, použijte metodu statické hodnoty v nástroji BigInteger Java.
Protože má Java schopnost přetížení obsluhy Neexistuje odpovídající metoda pro provádění matematických operací s zapouzdřenými hodnotami v dané třídě. Budou se dále diskutovat.
Java BigInteger: metody a příklady jejich použití
Tato třída má ve svém arzenálu mnoho metod, které vám umožňují manipulovat s číselnými hodnotami a provádět na nich různé matematické operace. Níže je uveden seznam těchto metod.
Analyzujeme metody, které provádějí aritmetické operace:
- add (hodnota) - přidává hodnoty aktuálního objektu s argumentem předaným jako;
- odečíst (odečírá) - odčítavá odčítač od aktuální hodnoty;
- násobí (hodnota) - provede násobení;
- dělení (rozdělovač) - dělí aktuální hodnotu na dělič;
- pow (int arg) - Zvyšuje hodnotu volaného objektu na hodnotu velikosti v arg;
- abs () - vrátí absolutní hodnotu volaného objektu;
- negate () - vrátí objekt BigInteger, jehož hodnota má opačný znak.
Podívejme se na jednoduchý příklad provádění aritmetické operace na dvou hodnotách zapouzdřených v objektu:
- BigInteger val1, val2, přidání, dělení, oppositeSign;
- val1 = nový BigInteger ("5");
- val2 = BigInteger.valueOf (10);
- přidání = val1.add (val2);
- dělení = val2.divide (val1);
- oppositeSign = val1.negate ();
Všimněte si, jak vytvořit objekty. Proměnná val1 byla inicializována pomocí konstruktoru, který přijal řetězec, a uloží hodnotu 5. val2 je 10 jako výsledek metody statické hodnotyOf. Hodnota přidané proměnné je výsledkem přidání prvních dvou proměnných a je 15. Proměnná dělení odpovídajícím způsobem ukládá výsledek odečítání. oppositeSign se rovná hodnotě val1 s opačným znaménkem, tj. -5.
Závěr
Jak můžete vidět, třída BigInteger Java poskytuje různé nástroje pro operace na velmi velkých počtech. V takovém případě jsou typu overflow eliminovány, jelikož bezpečnost v Javě má jednu z nejvyšších priorit, přirozeně bez kompromisů funkčnosti.
- Jak nainstalovat jazyk Java v systému Windows 7
- Jak aktualizovat jazyk Java v operačních systémech Linux a Windows?
- První program Java je Hello World
- Java programovací jazyk
- Jak a proč potřebuji instalovat Java na svém počítači?
- Rodina motocyklů "Java-350"
- `Java-634` - oblíbený motocykl sedmdesátých let
- `Java 350-638` - sen sovětského motocyklisty
- Cigarety Java: popis a typy
- Jávové pole řetězců. Třídění pole v jazyce Java. Dvourozměrné pole Java
- Java: regulární výrazy, speciální znaky
- Programování: Java. Typy dat
- Java: InputStream. Vstupní toky
- Generika jazyka Java: Popis a metody
- Java Array. Pole v Javě. Java pro začátečníky
- Java: práce se soubory - psaní, čtení, mazání
- Nedostatek paměti Minecraft: co dělat a jak se zbavit této chyby
- Prvky modelu objektu Java: abstraktní třída, rozhraní
- Jak povolit Javu ve Firefoxu pro problémy s uzamčením
- Jak odstranit java z počítače? Je to snadné!
- Jak psát do souboru v jazyce Java