我需要将值存储到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太长了intlong。你将不得不使用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是不够的?的主要内容,如果未能解决你的问题,请参考以下文章

将 JSON 对象脱盐到数据表时将值“1D”转换为类型“System.Int64”时出错

将多个 int 值存储到一个变量中 - C++

将值传递给 main(int, char**)

将值转换为 int

可空类型

string转int的方法是啥?