黑马程序员技术交流社区

标题: 9999亿 该用什么数据类型 [打印本页]

作者: 程钧杰    时间: 2011-9-14 23:00
标题: 9999亿 该用什么数据类型
9999亿 该用什么数据类型?
肯定是超过int了
但是我用long的时候
他还是会先用int判断
还是超出范围
怎么解决?
作者: 匿名    时间: 2011-9-14 23:30
long类型的数据要在后面加个L,不然就会当成int。如long l = 999999999999L;就没问题了
作者: 匿名    时间: 2011-9-15 00:56
标题: 回复 沙发 的帖子
百度也是这样说的
那请问我怎么取999亿那那个前四位?
作者: 匿名    时间: 2011-9-15 06:55
除就可以了,123456789012 / 100000000 = 1234;要得到前多少位除以相应的位数就可以得到
作者: 杨相国    时间: 2011-9-15 07:06
用BigInteger不可变的任意精度的整数。所有操作中,都以二进制补码形式表示 BigInteger(如 Java 的基本整数类型)。
这是jdk提供的专门用于储存大数据的api,不过对这些数值进行操作时就不能使用+ - * / 了,要用这个类的提供的方法了
BigInteger big = new BigInteger("999999999999");
具体请查看api之java.math.BigInteger类
类似的还有BigDecimal类
[ 本帖最后由 杨相国 于 2011-09-15  07:08 编辑 ]
作者: 匿名    时间: 2011-9-15 17:04
标题: 回复 报纸 的帖子
BigInteger  交易系统里面用的比较多吧
作者: 匿名    时间: 2011-9-15 17:39
我相信LZ一定没好好看过视频,上面讲得很清楚,并且多次提到float,double的关系,和int,long是一样的道理。
如果单单是单精度,要+上 f ;同理+ l .




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2