亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java Big Number操作BigInteger及BigDecimal類詳解

 更新時間:2022年07月23日 15:55:01   作者:SuperHeroes  
這篇文章主要為大家介紹了Java Big Number操作BigInteger及BigDecimal類詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

BigInteger類

java.math.BigInteger 類的使用場景是大整數(shù)操作。它提供類似所有Java的基本整數(shù)運算符和java.lang.Math中的所有相關(guān)的方法的操作,如+、-、*、/、%、&、|、mod、>>、<<,以及min()、max()等等。

只不過它操作的整數(shù)都是極其大的,為科學計算提供了很大的便利。比如下面的代碼就是計算20000000000000000000 * 30000000000000000000,利用BigInteger可以很容易的計算出來結(jié)果。

import java.math.BigInteger;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        String a = in.nextLine();
        String b = in.nextLine();
        BigInteger biga = new BigInteger(a);
        BigInteger bigb = new BigInteger(b);
        BigInteger result = biga.multiply(bigb);
        System.out.println(result);
    }
}

//輸入
30000000000000000000
20000000000000000000
//輸出
600000000000000000000000000000000000000

構(gòu)造函數(shù)

BigInteger提供了6個構(gòu)造函數(shù),方便取到一個大數(shù)。上方的代碼就是利用形參是String的構(gòu)造函數(shù)來將傳入的字符串轉(zhuǎn)換為BigInteger類型。常用的構(gòu)造方法如下:

  • BigInteger(String val):將10進制字符串轉(zhuǎn)換為BigInteger
  • BigInteger(byte[] val):將只含有0和1的bite[]數(shù)組轉(zhuǎn)換為2進制表示的BigInteger值
  • BigInteger(int numBits, Random rnd):構(gòu)造一個隨機生成的BigInteger,均勻分布在范圍0到 (2^numBits - 1)
  • BigInteger(String val, int radix):將字符串轉(zhuǎn)換為指定進制的BigInteger

類方法

BigInteger的類方法有40多個,覆蓋了簡單四則運算、位運算、科學計算、哈希運算、類型轉(zhuǎn)換等。下面是最最常用的方法:

  • BigInteger abs() :求絕對值
  • BigInteger add(BigInteger val):計算和
  • BigInteger subtract(BigInteger val):計算差
  • BigInteger multiply(BigInteger val):計算積
  • BigInteger divide(BigInteger val):計算商
  • BigInteger pow(int exponent) :計算冪
  • BigInteger remainder(BigInteger val):計算余數(shù)
  • BigInteger max(BigInteger val):返回較大值
  • BigInteger min(BigInteger val):返回較小值

BigDecimal類

java.math.BigDecimal 類提供用于算術(shù),刻度操作,舍入,比較,哈希算法和格式轉(zhuǎn)換操作。該類的使用范圍是小數(shù)運算。我們都知道Java的float和double是浮點數(shù),直接進行比較操作、運算操作都會有誤差,BigDecimal就不會出現(xiàn)這種情況。

toString()方法提供BigDecimal的規(guī)范表示。它使用戶可以完全控制舍入行為。提供用于操作BigDecimal規(guī)模兩種類型的操作:

  • 縮放/舍入操作
  • 小數(shù)點移動操作。

日常Coding中我還沒用到過這個類,需要使用的時候再查看文檔吧。不過這個類的使用方法應該和BigInteger類類似,只不過支持小數(shù)操作,在方法頭中會多一些形參來控制精度或其他控制。

以上就是Java Big Number操作BigInteger及BigDecimal類詳解的詳細內(nèi)容,更多關(guān)于Java Big Number操作的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • SpringBoot整合RabbitMQ實現(xiàn)延遲隊列的示例詳解

    SpringBoot整合RabbitMQ實現(xiàn)延遲隊列的示例詳解

    這篇文章主要為大家詳細介紹了SpringBoot如何整合RabbitMQ實現(xiàn)延遲隊列,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的可以了解一下
    2023-04-04
  • 利用Java獲取文件名、類名、方法名和行號的方法小結(jié)

    利用Java獲取文件名、類名、方法名和行號的方法小結(jié)

    這篇文章運用實例代碼給大家介紹了利用Java怎樣獲取文件名、類名、方法名和行號,有需要的可以參考借鑒,下面一起來看看吧。
    2016-08-08
  • Vue實現(xiàn)驗證碼登錄的超詳細步驟

    Vue實現(xiàn)驗證碼登錄的超詳細步驟

    這篇文章主要給大家介紹了關(guān)于Vue實現(xiàn)驗證碼登錄的超詳細步驟,我們在使用vue進行前端開發(fā)時都需要登錄驗證,文中通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2023-09-09
  • 一文搞懂Java創(chuàng)建線程的五種方法

    一文搞懂Java創(chuàng)建線程的五種方法

    本文主要為大家詳細介紹一下Java實現(xiàn)線程創(chuàng)建的五種常見方式,文中的示例代碼講解詳細,對我們學習有一定的幫助,感興趣的可以跟隨小編學習一下
    2022-06-06
  • Jackson序列化和反序列化忽略字段操作

    Jackson序列化和反序列化忽略字段操作

    這篇文章主要介紹了Jackson序列化和反序列化忽略字段操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • SpringBoot-JWT生成Token和攔截器的使用(訪問受限資源)

    SpringBoot-JWT生成Token和攔截器的使用(訪問受限資源)

    本文主要介紹了SpringBoot-JWT生成Token和攔截器的使用(訪問受限資源),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05
  • 淺談Java常見的排序算法

    淺談Java常見的排序算法

    今天給大家?guī)淼氖顷P(guān)于Java的相關(guān)知識,文章圍繞著Java常見的排序算法展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java?實戰(zhàn)項目之家政服務(wù)平臺系統(tǒng)的實現(xiàn)流程

    Java?實戰(zhàn)項目之家政服務(wù)平臺系統(tǒng)的實現(xiàn)流程

    讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+jsp+mysql+maven實現(xiàn)家政服務(wù)平臺系統(tǒng),大家可以在過程中查缺補漏,提升水平
    2021-11-11
  • IDEA運行SSM項目的超詳細圖解教程

    IDEA運行SSM項目的超詳細圖解教程

    SSM項目部署其實很簡單,下面這篇文章主要給大家介紹了關(guān)于IDEA運行SSM項目的超詳細圖解教程,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-10-10
  • Springboot通過lucene實現(xiàn)全文檢索詳解流程

    Springboot通過lucene實現(xiàn)全文檢索詳解流程

    Lucene是一個基于Java的全文信息檢索工具包,它不是一個完整的搜索應用程序,而是為你的應用程序提供索引和搜索功能。Lucene 目前是 Apache Jakarta 家族中的一個開源項目,也是目前最為流行的基于 Java 開源全文檢索工具包
    2022-06-06

最新評論