激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java中操作超大數的方法

Java中操作超大數的方法

2021-05-09 12:11Java教程網 Java教程

本篇文章是小編在網上整理的關于java操作超大數的方法以及解決思路,有興趣的朋友參考學習下。

我們知道integer的最大值是 2^31 - 1,long最大值是 2^63 -1

不管是32位機還是64位機都是這樣

通常來說我們要操作一個大于 integer最大值的數的時候會用 long來進行

但萬一我們遇到一個比 long的最大值還大的數怎么辦呢?

biginteger

這種情況還是會出現的,對于操作超大數的情況 java提供了 biginteger類,使用時需要實例化一個 biginteger對象,調用它的運算方法進行加減等操作。

下面舉個例子說明

操作 uuid

我們知道在android設備中經常用 anroid_id 來表示設備的唯一性

一般在安裝 app的之后第一次啟動時會調用下面的代碼來生成一個設備編號

?
1
string private_id = settings.secure.getstring(getcontext().getcontentresolver(), settings.secure.android_id);

然后把字符串通過持久化儲存放到文件系統或者數據庫中,日活等指標都可以依據這個來標識。

它的值通常是個十六進制數,比如

af84c9117b6c98d2

把它轉成十進制是

12647454730485537000

這已經超出了long最大值的范圍 9223372036854776000

然后我們想在原有 android_id的基礎上簡單加密一下,比如加個隨機數上去什么的

?
1
2
3
4
5
string private_id = settings.secure.getstring(getcontext().getcontentresolver(), settings.secure.android_id);
biginteger androidid = new biginteger(private_id, 16);
random random = new random();
biginteger result = androidid.add(new biginteger(string.valueof(random.nextint(10000)), 10));
string hex = result.tostring();

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 艹男人的日日夜夜 | 男女生羞羞视频网站在线观看 | 欧美日韩大片在线观看 | 欧美韩国一区 | 国产亚洲精品久久久久婷婷瑜伽 | 在线成人免费观看视频 | 91色一区二区三区 | 在线观看免费av网 | 一本免费视频 | www.91sao | 欧美性受ⅹ╳╳╳黑人a性爽 | 日本黄色a视频 | 久久人人爽人人爽人人片av高清 | 91麻豆蜜桃一区二区三区 | 精品黑人一区二区三区国语馆 | 国产精品久久久久久久久久三级 | 久久久婷婷一区二区三区不卡 | 性欧美久久 | 日韩av在线影院 | 激情综合网俺也去 | 精品国产一区二区三区天美传媒 | 激情亚洲一区二区 | 精品一区二区三区欧美 | 中文字幕在线网站 | 国产精品wwww | 性 毛片 | 成人午夜免费网站 | 天天操天天骑 | 91伊人久久| 欧美日韩免费在线观看视频 | 欧美精品毛片 | 欧美日韩在线视频一区 | 精品国产91久久久久久 | 欧美一级毛片免费观看 | 娇喘视频在线观看 | 在线看免费观看日本 | 久久久人成影片一区二区三区 | 有色视频在线观看 | 李宗瑞国产福利视频一区 | 亚洲日韩精品欧美一区二区 | 精品国产看高清国产毛片 |