1

我无法理解如何正确阅读 BigInteger 的 JavaDoc 页面。特别令人困惑的部分涉及构造函数摘要

在我的书中,有一个名为 Rational 的类示例,它有 3 个不同的构造函数:

  • 合理的()
  • 有理数 (int n)
  • 有理数(int x,int y)

和不同的方法:

  • 添加
  • 减去
  • 划分
  • gcd(最大公约数)
  • 到字符串。

它有两个实例变量:

  • 整数
  • 内部

我必须使用以下方法重写我书中的 Rational 类示例:

  • 大整数数

  • 大整数巢穴

    作为实例变量。

问题是我不明白:

  • 如何阅读构造函数摘要
  • 当我在我的书中重写 Rational 类时使用哪个
  • 字段摘要是什么以及描述了什么

我是在寻找构造函数中的参数来选择我想使用的构造函数吗?我只是不确定我在读什么。在阅读 BigInteger 的 Javadoc 页面时,我应该使用某种特定的技术或方法吗?

http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html#BigInteger(byte[])

4

3 回答 3

2

如何阅读构造函数摘要

  • 复制/粘贴 java.lang.object 下的点符号并添加“new”以创建

当我在我的书中重写 Rational 类时使用哪个

  • 使用与您的数据类型匹配的那个。如果不匹配,请使用带 a 的那个String,然后用于toString()转换您拥有的

字段摘要是什么以及描述了什么

  • 字段摘要列出了存储类型特定元数据的对象的属性

字段详细信息是什么以及描述的内容

  • 字段详细信息描述了每个字段的意图

方法摘要是什么以及描述了什么

  • 方法摘要列出了处理特定数据的对象的方法

方法细节是什么以及描述了什么

  • 方法细节描述了每个方法的意图

use链接返回当前类的所有交叉引用以映射到扩展、实现或使用它的其他类。

生成 JavaDoc 的代码包括以下注释:

  • @关联
  • @看
  • @串行
  • @serialField
  • @不推荐使用
  • @参数
  • @作者
  • @例外
  • @抛出
  • @linkplain
  • @returns
  • @自从
  • @价值
  • @版本

参考

于 2014-03-18T00:54:13.857 回答
2

听起来您BigInteger对 javadoc 上的构造函数感到困惑;事实是,根据您所说,您只需要转换intBigInteger(通过String)所需的那个!您只需要更改构造函数Rational即可使用 BigInteger。如果Rational构造函数接受int数据类型,只需在构造函数中将它们转换为BigInteger类型并分配给您的BigInteger实例变量。如果您查看这些方法,则会发现类中其他方法所需的基本操作(加法、减法等)的等价物。

编辑:我将举一个小例子。我假设您的Rational(int x, int y)构造函数看起来像这样:

public Rational (int x, int y) {
    num = x;
    dem = y;
}

如果num并且den现在是 BigIntegers,您需要更改它,以便将 x 和 y 转换为 BigIntegers。如果您查看BigInteger构造函数,则没有直接采用 int 的构造函数。但是我们有BigInteger(String val),并且 int 可以转换为String.

public Rational (int x, int y) {
    num = new BigInteger(Integer.toString(x));
    dem = new BigInteger(Integer.toString(y));
}

有了这个想法,您可以自己解决其余的问题。

于 2013-07-24T00:28:32.177 回答
0

每个构造函数都是一个用于创建 BigInteger 类实例的方法,并且每个构造函数都可以采用不同的参数。这就是 Java 如何区分您打算使用的构造函数的方式。当您创建一个新的 BigInteger 时,例如:

BigInteger myInt = new Rational(int num1, int num2)

Java 知道你在使用构造函数

Rational(int x, int y)

通过匹配传递参数的类型和顺序。通常有 mutator 和 accessor 方法来更新属于你的类的实例的值。每个字段都是属于 BigInteger 的每个实例的变量。因此,当您创建一个新的 BigInteger 时,每个实例都有自己的特定于类的字段变量。

于 2013-07-24T00:26:19.220 回答