我需要将值存储到int类型的变量,但int是不够的?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我需要将值存储到int类型的变量,但int是不够的?相关的知识,希望对你有一定的参考价值。
我在android应用程序中开始了一个新的项目,用Java调用BasesConvertor
所以我的问题是: - 将Base 10转换为其他基础我需要将值存储到int类型的变量但int不够Max int size是:2,147,483,647
- 十六进制的小值等于十进制的大值ex:FFFFFFFFFFFF(16)= 281 474 976 710 655(10)
答案
在这种情况下,72057594037927702
太长了int
和long
。你将不得不使用BigInteger
:
BigInteger i = new BigInteger("72057594037927702");
编辑:
如果要使用加法,减法,乘法,除法等数学运算,则需要使用BigInteger
类中的预定义方法:
BigInteger i = new BigInteger("72057594037927702");
System.out.println(i);
// Add five
i = i.add(new BigInteger("5"));
System.out.println(i);
// Take tree
i = i.subtract(new BigInteger("3"));
System.out.println(i);
// Four times
i = i.multiply(new BigInteger("5"));
System.out.println(i);
// Divided among 2
i = i.divide(new BigInteger("2"));
System.out.println(i);
/*
* Output:
* 72057594037927702
* 72057594037927707
* 72057594037927704
* 360287970189638520
* 180143985094819260
*/
另一答案
您可以尝试将值存储在不同的数据类型中,比如说double会执行并查看此图表可能会有所帮助
http://cs-fundamentals.com/java-programming/java-primitive-data-types.php
此图表包含所有数据类型及其限制
以上是关于我需要将值存储到int类型的变量,但int是不够的?的主要内容,如果未能解决你的问题,请参考以下文章