A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 希望的曙光 中级黑马   /  2013-1-7 04:27  /  1766 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在什么时候用,怎么去数值,和StringBuilder有什么区别?

评分

参与人数 1技术分 +1 收起 理由
邓艳秋 + 1

查看全部评分

4 个回复

倒序浏览
我的意见还是去看API,说得简单一点,这个类说的是不可变的任意精度的整数,因为我们的int,long都是有限位的,当你的数据足够大,long都放不下的时候怎么办?就用这个····,也就是一个扩展,既然是跟int,long差不多的东西,必然也有他们的一些方法,也会有自己的一些特殊方法(这个没仔细看,你可以去查API)。
至于你说的StringBuileder,这完全是两码事,StringBuilder是可变字符数列,可以理解是带缓冲String ,区别就是长度可变。
当然从两者都是对原来类型的扩展上来说的话,还是有相似点的。

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
辛苦了!
回复 使用道具 举报
public class BigIntegerextends Numberimplements Comparable<BigInteger>不可变的任意精度的整数。所有操作中,都以二进制补码形式表示 BigInteger(如 Java 的基本整数类型)。BigInteger 提供所有 Java 的基本整数操作符的对应物,并提供 java.lang.Math 的所有相关方法。另外,BigInteger 还提供以下运算:模算术、GCD 计算、质数测试、素数生成、位操作以及一些其他操作。
虽然 StringBuilder 对象是动态对象,允许扩充它所封装的字符串中字符的数量,但是您可以为它可容纳的最大字符数指定一个值。此值称为该对象的容量,不应将它与当前 StringBuilder 对象容纳的字符串长度混淆在一起。例如,可以创建 StringBuilder 类的带有字符串“Hello”(长度为 5)的一个新实例,同时可以指定该对象的最大容量为 25。当修改 StringBuilder 时,在达到容量之前,它不会为其自己重新分配空间。当达到容量时,将自动分配新的空间且容量翻倍。可以使用重载的构造函数之一来指定 StringBuilder 类的容量。以下代码示例指定可以将 MyStringBuilder 对象扩充到最大 25 个空白。

评分

参与人数 1技术分 +1 收起 理由
邓艳秋 + 1

查看全部评分

回复 使用道具 举报
与StringBuilder没什么关系。 在使用整数时,如果数值超过了int的表示范围,可以使用BigInteger来代替int。 BigInteger 可以处理任意长度数字序列的的数值。 BigInteger 类实现了任意精度的整数运算
遗憾的是,不能使用人们熟悉的算术运算符(如:+和*)处理大数值。而需要使用大数值类中的add和multiply方法,详细方法请参考API

评分

参与人数 1技术分 +1 收起 理由
邓艳秋 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马