最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java大數(shù)運算BigInteger與進制轉(zhuǎn)換詳解

 更新時間:2023年09月23日 11:13:21   作者:little_fat_sheep  
這篇文章主要介紹了Java大數(shù)運算BigInteger與進制轉(zhuǎn)換詳解,Java 提供了 BigInteger(大整數(shù))類和 BigDecimal(大浮點數(shù))類用于大數(shù)運算,這兩個類都繼承自 Number 類(抽象類),由于 BigInteger 在大數(shù)運算中更常見,需要的朋友可以參考下

1 前言

Java 提供了 BigInteger(大整數(shù))類和 BigDecimal(大浮點數(shù))類用于大數(shù)運算,這兩個類都繼承自 Number 類(抽象類)。

由于 BigInteger 在大數(shù)運算中更常見,本博客只介紹 BigInteger,另外也介紹下 Java 內(nèi)置的進制轉(zhuǎn)換函數(shù),非常好用?。?!

2 BigInteger 常用方法

包:import java.math.BigInteger;

//初始化
public BigInteger(String val)
public BigInteger(byte[] val)
public static BigInteger valueOf(long val)
//四則運算
public BigInteger add(BigInteger val)  //加法
public BigInteger subtract(BigInteger val)  //減法
public BigInteger multiply(BigInteger val)  //乘法
public BigInteger divide(BigInteger val)  //除法(整除)
//取余(取模)
public BigInteger mod(BigInteger m)
public BigInteger remainder(BigInteger val)  
//其他基本運算
public BigInteger negate()  //取反
public BigInteger abs()  //絕對值
public BigInteger pow(int exponent)  //指數(shù)
public BigInteger max(BigInteger val)  //較大者
public BigInteger min(BigInteger val)  //較小者
public BigInteger gcd(BigInteger val)  //最大公約數(shù)
//判斷與比較
public int compareTo(BigInteger val)  //比較大小
public boolean equals(Object x)  //判斷是否相等
//十進制轉(zhuǎn)換為其他進制
public byte[] toByteArray()  //轉(zhuǎn)換為二進制數(shù)組
public String toString(int radix)  //轉(zhuǎn)換為 radix 進制數(shù),2<=radix<=36,否則令radix=10
//其他進制轉(zhuǎn)換為十進制
public BigInteger(String val, int radix)  //將 radix 進制的val轉(zhuǎn)換為十進制,2<=radix<=36,否則拋出NumberFormatException異常

3 Integer 類中進制轉(zhuǎn)換

由于數(shù)字只能由 '0'-'9' 和 'a'-'z' 表示,因此最多只能是36進制。在進制轉(zhuǎn)換時,經(jīng)常會用到參數(shù) radix (基數(shù)),表示進制數(shù),因此 2<=radix<=36。當(dāng) radix 不在此區(qū)間時,若是十進制轉(zhuǎn)換為 radix 進制,令 radix=10;若是 radix 進制轉(zhuǎn)換為十進制,拋出NumberFormatException異常.

3.1 十進制轉(zhuǎn)換為其他進制

public static String toBinaryString(int i)  將i轉(zhuǎn)換為2進制
public static String toOctalString(int i)  將i轉(zhuǎn)換為8進制
public static String toHexString(int i)  將i轉(zhuǎn)換為16進制
public static String toString(int i, int radix)  將i轉(zhuǎn)換為 radix 進制,2<=radis<=36,否則令radis=10

3.2 其他進制轉(zhuǎn)換為十進制

//將 radix 進制數(shù)s轉(zhuǎn)換為十進制,2<=radix<=36,否則拋出NumberFormatException異常
public static int parseInt(String s, int radix) throws NumberFormatException
public static Integer valueOf(String s, int radix) throws NumberFormatException

3.3 任意進制之間的轉(zhuǎn)換

//將 m 進制數(shù)轉(zhuǎn)換為 n 進制數(shù)
public static String transform(String s_m,int m,int n) {
    Integer tem=Integer.parseInt(s_m,m); //將m進制的s_m轉(zhuǎn)換為10進制
    String s_n=Integer.toString(tem,n); //將tem轉(zhuǎn)換為n進制
    return s_n;
}

到此這篇關(guān)于Java大數(shù)運算BigInteger與進制轉(zhuǎn)換詳解的文章就介紹到這了,更多相關(guān)Java的BigInteger與進制轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot整合jasypt加密配置文件敏感信息

    SpringBoot整合jasypt加密配置文件敏感信息

    在項目中我們需要對配置文件的一些敏感信息進行加密處理,比如數(shù)據(jù)庫賬戶密碼,避免直接暴露出來,這種場景常常用于生產(chǎn)環(huán)境,我們不想讓開發(fā)人員知道生產(chǎn)庫的密碼,有運維人員統(tǒng)一管理,所以本文給大家介紹了SpringBoot整合jasypt加密配置文件敏感信息
    2024-06-06
  • 解析電子郵件的基本概念及JavaMail API郵件功能使用

    解析電子郵件的基本概念及JavaMail API郵件功能使用

    這篇文章主要介紹了電子郵件的基本概念及JavaMail API郵件功能使用,包括用Java來發(fā)送郵件的示例,需要的朋友可以參考下
    2016-02-02
  • Spring?Boot快速過濾出一次請求的所有日志

    Spring?Boot快速過濾出一次請求的所有日志

    這篇文章主要介紹了Spring?Boot快速過濾出一次請求的所有日志,本文講述了如何使用MDC工具來快速過濾一次請求的所有日志,并通過裝飾器模式使得MDC工具在異步線程里也能生效,需要的朋友可以參考下
    2022-11-11
  • Java實現(xiàn)多級表頭和復(fù)雜表頭的導(dǎo)出功能

    Java實現(xiàn)多級表頭和復(fù)雜表頭的導(dǎo)出功能

    這篇文章主要為大家詳細介紹了Java實現(xiàn)多級表頭和復(fù)雜表頭的導(dǎo)出功能的相關(guān)知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • 通過實例了解Java Integer類和int的區(qū)別

    通過實例了解Java Integer類和int的區(qū)別

    這篇文章主要介紹了通過實例了解Java Integer類和int的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • 基于UncategorizedSQLException異常處理方案

    基于UncategorizedSQLException異常處理方案

    這篇文章主要介紹了基于UncategorizedSQLException異常處理方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • MyBatis?SqlSession執(zhí)行流程小結(jié)

    MyBatis?SqlSession執(zhí)行流程小結(jié)

    本文主要介紹了MyBatis?SqlSession執(zhí)行流程小結(jié),涵蓋動態(tài)代理、Executor、StatementHandler等組件,及參數(shù)處理、結(jié)果映射與緩存機制,感興趣的可以了解一下
    2025-05-05
  • maven 配置多個倉庫的方法

    maven 配置多個倉庫的方法

    這篇文章主要介紹了maven 配置多個倉庫的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Mybatis如何實現(xiàn)延遲加載及緩存

    Mybatis如何實現(xiàn)延遲加載及緩存

    這篇文章主要介紹了Mybatis如何實現(xiàn)延遲加載及緩存,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • 淺談Java中Collection和Collections的區(qū)別

    淺談Java中Collection和Collections的區(qū)別

    下面小編就為大家?guī)硪黄獪\談Java中Collection和Collections的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08

最新評論

措美县| 福海县| 菏泽市| 隆回县| 达州市| 勐海县| 高雄县| 丁青县| 剑河县| 揭西县| 泸水县| 漳平市| 林口县| 永清县| 迭部县| 红桥区| 托克逊县| 湾仔区| 武强县| 林周县| 桐乡市| 石楼县| 甘肃省| 屏南县| 嘉峪关市| 依兰县| 仁寿县| 高邑县| 宜城市| 镇赉县| 高州市| 彰武县| 西乡县| 桓台县| 黄平县| 西宁市| 吉林省| 宣城市| 商城县| 筠连县| 施甸县|