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

Java的long和bigint長度對比詳解

 更新時間:2019年07月07日 14:39:23   投稿:laozhang  
在本文中小編給大家分享了關(guān)于Java的long和bigint長度比較的知識點內(nèi)容,有興趣的朋友們學習參考下。

Java 中Long的值大小比較

java.util.Lang 對象吧,而不是基本類型 long  (注意大小寫)

Java中如果使用 == 雙等于比較對象,等于比較的是兩個對象的內(nèi)存地址,也就是比較兩個對象是否是同一個對象

如果比較兩個Long對象值是否相等,則不可以使用雙等號進行比較,可以采用如下方式:

1. 使用 equals 方法

Long a = new Long(3);
Long b = new Long(3);
System.out.println(a.equals(b));

2. 使用 Long 類型中的 longValue() 方法進行比較,如

Long a = new Long(3);
Long b = new Long(3);
System.out.println(a.longValue()==b.longValue());

因為Long為long的封裝對象類型,因此比較大小的時候不能用'=='

用java數(shù)組實現(xiàn)BigInt超大整數(shù)設(shè)計

package com.test;  
  
import org.apache.commons.lang.StringUtils;  
  
/** 
 * @author jsczxy2 
 *  
 */  
public class BigInt {  
      
    public static void main(String[] args) {  
        BigInt a = new BigInt("367892732043217489143432876442367892732043217489143432876442367892732043217489143432876442367892732043217489143432876442");  
        BigInt b = new BigInt("3678927329999999999999994328736789273299999999999999943287367892732043217489143432876442367892732043217489143432876442");  
        System.out.println(a.toString());  
        System.out.println(b.toString());  
        System.out.println(a.add(b));  
    }  
  
    private int[] arrayint = new int[100];  
  
    public BigInt(String num) {  
        //分解數(shù)字到int數(shù)組中  
        splitNumToArray(num);  
    }  
  
    public void splitNumToArray(String num) {  
        int j = 0;  
        StringBuffer sb = new StringBuffer();  
        //數(shù)字全部翻轉(zhuǎn)后分組截取后再翻轉(zhuǎn)回來加入int數(shù)組,這里控制數(shù)組中每一個int元素恒定為8位不超過int最大長度  
        num = new StringBuffer(num).reverse().toString();  
        for (int i = 0; i <num.length(); i++) {  
            if (i % 8 == 0) {  
                if (sb != null && !sb.toString().equals("")){  
                    arrayint[j] = Integer.valueOf(sb.reverse().toString());  
                    j++;  
                    sb = new StringBuffer();  
                }  
            }  
                sb.append(num.charAt(i));  
              
        }  
        if (sb != null) {  
            arrayint[j] = Integer.valueOf(sb.reverse().toString());  
        }  
    }  
  
    //數(shù)組從后開始打印數(shù)字,不滿8位補齊8位數(shù)字用0進行左填充  
    public String printArray(int[] array) {  
        StringBuffer sb = new StringBuffer();  
        boolean isNotFirstInt = false;  
        for (int i = array.length-1; i >=0 ; i--) {  
            if (array[i] != 0) {  
                System.out.println(i+":"+array[i]);  
                if(isNotFirstInt && String.valueOf(array[i]).length()<8){  
                    sb.append(StringUtils.leftPad(String.valueOf(array[i]), 8,"0"));  
                }else{  
                    sb.append(array[i]);  
                    if(!isNotFirstInt)  
                        isNotFirstInt = true;  
                }  
                  
            }  
        }  
        return sb.toString();  
    }  
  
    //BigInt數(shù)字進行加法運算  
    public String add(BigInt bigInt) {  
        int[] a = this.arrayint;  
        int[] b = bigInt.arrayint;  
        int[] result = new int[100];  
        //根據(jù)各種情況進行結(jié)果賦值  
        for(int i=0;i<a.length;i++){  
            if(a[i]==0&&b[i]!=0){  
                result[i]=b[i];  
            }else if(a[i]!=0&&b[i]==0){  
                result[i]=a[i];  
            }else if(a[i]!=0&&b[i]!=0){  
                result[i]=a[i]+b[i];  
            }else{  
                result[i]=0;  
            }  
        }  
        //處理結(jié)果數(shù)組中超過8位的int元素的進位,該int元素截掉1位后再把其后一個元素值加一  
        for(int i=0;i<result.length;i++){  
            if(String.valueOf(result[i]).length()>8){  
                result[i] = Integer.valueOf(String.valueOf(result[i]).substring(1));  
                result[i+1] = result[i+1] + 1;  
            }  
        }  
        return printArray(result);  
    }  
  
    //打印BigInt數(shù)字  
    @Override  
    public String toString() {  
        return printArray(arrayint);  
    }  
  
}  

bigint

從 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型數(shù)據(jù)(所有數(shù)字)。存儲大小為 8 個字節(jié)。

int

從 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型數(shù)據(jù)(所有數(shù)字)。存儲大小為 4 個字節(jié)。int 的 SQL-92 同義字為 integer。

smallint

從 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型數(shù)據(jù)。存儲大小為 2 個字節(jié)。

tinyint

從 0 到 255 的整型數(shù)據(jù)。存儲大小為 1 字節(jié)。

說明:

int(M) 在 integer 數(shù)據(jù)類型中,M 表示最大顯示寬度,只用于在顯示,并不影響存儲。在 int(M) 中,M 的值跟 int(M) 所占多少存儲空間并無任何關(guān)系。和數(shù)字位數(shù)也無關(guān)系 int(3)、int(4)、int(8) 在磁盤上都是占用 4 btyes 的存儲空間。

相關(guān)文章

  • 自定義注解基本概念和使用方式

    自定義注解基本概念和使用方式

    這篇文章主要介紹了自定義注解基本概念和使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • JAVA設(shè)計模式中的策略模式你了解嗎

    JAVA設(shè)計模式中的策略模式你了解嗎

    這篇文章主要為大家詳細介紹了JAVA設(shè)計模式中的策略模式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Java中ThreadLocal的用法和原理詳解

    Java中ThreadLocal的用法和原理詳解

    這篇文章主要為大家詳細介紹了Java中ThreadLocal的用法和原理,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的可以了解一下
    2023-04-04
  • RocketMQ中的通信模塊詳解

    RocketMQ中的通信模塊詳解

    這篇文章主要介紹了RocketMQ中的通信模塊詳解,RocketMQ消息隊列集群主要包括NameServer、Broker(Master/Slave)、Producer、Consumer4個角色,本文我們簡單來講解一下,需要的朋友可以參考下
    2024-01-01
  • Java TreeSet 添加失敗的解決

    Java TreeSet 添加失敗的解決

    這篇文章主要介紹了Java TreeSet 添加失敗的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • 簡單了解SpringMVC全局異常處理常用方法

    簡單了解SpringMVC全局異常處理常用方法

    這篇文章主要介紹了簡單了解SpringMVC全局異常處理常用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • 圖文示例詳解Lucene數(shù)據(jù)模型查詢原理

    圖文示例詳解Lucene數(shù)據(jù)模型查詢原理

    這篇文章主要為大家通過圖文示例詳解Lucene數(shù)據(jù)模型查詢原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • Spring @Configuration注解及配置方法

    Spring @Configuration注解及配置方法

    這篇文章主要介紹了Spring @Configuration注解及配置方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • 關(guān)于JAVA_HOME路徑修改之后JDK的版本依然不更改的解決辦法

    關(guān)于JAVA_HOME路徑修改之后JDK的版本依然不更改的解決辦法

    今天小編就為大家分享一篇關(guān)于JAVA_HOME路徑修改之后JDK的版本依然不更改的解決辦法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • springboot 獲取訪問接口的請求的IP地址的實現(xiàn)

    springboot 獲取訪問接口的請求的IP地址的實現(xiàn)

    本文主要介紹了springboot獲取訪問接口的請求的IP地址的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07

最新評論

乾安县| 毕节市| 株洲市| 嵊泗县| 商丘市| 峨边| 大足县| 曲松县| 沧州市| 泊头市| 乃东县| 洛宁县| 孝昌县| 南澳县| 泰和县| 满城县| 米脂县| 辰溪县| 兖州市| 三门峡市| 临海市| 梁河县| 开阳县| 太康县| 青浦区| 新宾| 陆丰市| 嘉义市| 泰兴市| 平凉市| 南川市| 潼关县| 大冶市| 高要市| 夹江县| 嘉峪关市| 漳平市| 石嘴山市| 永嘉县| 孝感市| 那曲县|