Konvertujte Double na Long v Jave
1. Prehľad
V tomto tutoriáli preskúmame rôzne metódy, z ktorých je možné prevádzať dvojitý do dlho v Jave.
2. Používanie odlievania typov
Poďme skontrolovať priamy spôsob obsadenia dvojitý do dlho pomocou operátora obsadenia:
Assert.assertEquals (9999, (long) 9999,999);
Uplatňovanie (dlhý) operátor obsadenia na a dvojitý hodnota 9999 999 vyústi do 9999.
Toto je primitívna konverzia, ktorá sa zužuje, pretože strácame presnosť. Keď dvojitý je obsadený do a dlho, výsledok zostane rovnaký, bez desatinnej čiarky.
3. Používanie Double.longValue
Poďme to preskúmať Dvojité zabudovaná metóda longValue previesť a dvojitý do a dlho:
Assert.assertEquals (9999, Double.valueOf (9999 999) .longValue ());
Ako vidíme, uplatňovanie longValue metóda na a dvojitý hodnota 9999 999 poskytne 9999. Interne the longValue metóda je vykonávanie jednoduchého obsadenia.
4. Používanie Matematika Metódy
Na záver sa pozrime, ako previesť a dvojitý do dlho použitím okrúhle, stropné a podlahové metódy z Matematika trieda:
Najprv skontrolujeme Matematika.okruh. Takto sa získa hodnota najbližšia k argumentu:
Assert.assertEquals (9999, Math.round (9999,0)); Assert.assertEquals (9999, Math.round (9999,444)); Assert.assertEquals (10 000, matematický kruh (9999 999));
Po druhé, Matematika.strop prinesie najmenšiu hodnotu, ktorá je väčšia alebo rovná argumentu:
Assert.assertEquals (9999, Math.ceil (9999,0), 0); Assert.assertEquals (10 000, Math.ceil (9999 444), 0); Assert.assertEquals (10 000, Math.ceil (9999 999), 0);
Na druhej strane, Matematika.podlaha robí pravý opak Math.ceil. Vráti najväčšiu hodnotu, ktorá je menšia alebo rovná argumentu:
Assert.assertEquals (9999, Math.floor (9999.0), 0); Assert.assertEquals (9999, Math.floor (9999,444), 0); Assert.assertEquals (9999, Math.floor (9999 999), 0);
Všimnite si, že oboje Math.ceil a Matematika.okruh vrátiť a dvojitý hodnota, ale v obidvoch prípadoch je vrátená hodnota ekvivalentná a dlho hodnotu.
5. Záver
V tomto článku sme diskutovali o rôznych metódach prevodu dvojitý do dlho v Jave. Pred aplikáciou na kritický kód je vhodné pochopiť, ako sa jednotlivé metódy správajú.
Celý zdrojový kód tohto tutoriálu je k dispozícii na GitHub.