JavaTM 2 Platform
Standard Ed. 5.0

类 java.math.BigInteger
的使用

使用 BigInteger 的软件包
java.awt.image 提供创建和修改图像的各种类。 
java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。 
java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 
java.security.interfaces 提供的接口用于生成如 RSA Laboratory Technical Note PKCS#1 中所定义的 RSA(Rivest、Shamir 和 Adleman AsymmetricCipher 算法)密钥,以及如 NIST 的 FIPS-186 中所定义的 DSA(数字签名算法)密钥。 
java.security.spec 提供密钥规范和算法参数规范的类和接口。 
java.util 包含集合框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。 
javax.crypto.interfaces 按在 RSA Laboratories' PKCS #3 中定义的那样提供 Diffie-Hellman 密钥接口。 
javax.crypto.spec 为密钥规范和算法参数规范提供类和接口。 
javax.security.cert 为公钥证书类。 
javax.xml.datatype XML/Java 类型映射关系。 
 

java.awt.imageBigInteger 的使用
 

返回 BigIntegerjava.awt.image 中的方法
 BigInteger IndexColorModel.getValidPixels()
          返回一个指示 colormap 中有效/无效像素的 BigInteger
 

参数类型为 BigIntegerjava.awt.image 中的构造方法
IndexColorModel(int bits, int size, int[] cmap, int start, int transferType, BigInteger validBits)
          根据一个 int 数组构造一个 IndexColorModel,该数组中的每个 int 值都是由默认 RGB 颜色模型格式的红色、绿色、蓝色和 alpha 分量构成。
 

java.mathBigInteger 的使用
 

声明为 BigIntegerjava.math 中的字段
static BigInteger BigInteger.ONE
          BigInteger 的常量 1。
static BigInteger BigInteger.TEN
          BigInteger 的常量 10。
static BigInteger BigInteger.ZERO
          BigInteger 的常量 0。
 

返回 BigIntegerjava.math 中的方法
 BigInteger BigInteger.abs()
          返回其值是此 BigInteger 的绝对值的 BigInteger。
 BigInteger BigInteger.add(BigInteger val)
          返回其值为 (this + val) 的 BigInteger。
 BigInteger BigInteger.and(BigInteger val)
          返回其值为 (this & val) 的 BigInteger。
 BigInteger BigInteger.andNot(BigInteger val)
          返回其值为 (this & ~val) 的 BigInteger。
 BigInteger BigInteger.clearBit(int n)
          返回其值与清除了指定位的此 BigInteger 等效的 BigInteger。
 BigInteger BigInteger.divide(BigInteger val)
          返回其值为 (this / val) 的 BigInteger。
 BigInteger[] BigInteger.divideAndRemainder(BigInteger val)
          返回包含 (this / val) 后跟 (this % val) 的两个 BigInteger 的数组。
 BigInteger BigInteger.flipBit(int n)
          返回其值与对此 BigInteger 进行指定位翻转后的值等效的 BigInteger。
 BigInteger BigInteger.gcd(BigInteger val)
          返回一个 BigInteger,其值是 abs(this)abs(val) 的最大公约数。
 BigInteger BigInteger.max(BigInteger val)
          返回此 BigInteger 和 val 的最大值。
 BigInteger BigInteger.min(BigInteger val)
          返回此 BigInteger 和 val 的最小值。
 BigInteger BigInteger.mod(BigInteger m)
          返回其值为 (this mod m) 的 BigInteger。
 BigInteger BigInteger.modInverse(BigInteger m)
          返回其值为 (this-1 mod m) 的 BigInteger。
 BigInteger BigInteger.modPow(BigInteger exponent, BigInteger m)
          返回其值为 (thisexponent mod m) 的 BigInteger。
 BigInteger BigInteger.multiply(BigInteger val)
          返回其值为 (this * val) 的 BigInteger。
 BigInteger BigInteger.negate()
          返回其值是 (-this) 的 BigInteger。
 BigInteger BigInteger.nextProbablePrime()
          返回大于此 BigInteger 的可能为素数的第一个整数。
 BigInteger BigInteger.not()
          返回其值为 (~this) 的 BigInteger。
 BigInteger BigInteger.or(BigInteger val)
          返回其值为 (this | val) 的 BigInteger。
 BigInteger BigInteger.pow(int exponent)
          返回其值为 (thisexponent) 的 BigInteger。
static BigInteger BigInteger.probablePrime(int bitLength, Random rnd)
          返回有可能是素数的、具有指定长度的正 BigInteger。
 BigInteger BigInteger.remainder(BigInteger val)
          返回其值为 (this % val) 的 BigInteger。
 BigInteger BigInteger.setBit(int n)
          返回其值与设置了指定位的此 BigInteger 等效的 BigInteger。
 BigInteger BigInteger.shiftLeft(int n)
          返回其值为 (this << n) 的 BigInteger。
 BigInteger BigInteger.shiftRight(int n)
          返回其值为 (this >> n) 的 BigInteger。
 BigInteger BigInteger.subtract(BigInteger val)
          返回其值为 (this - val) 的 BigInteger。
 BigInteger BigDecimal.toBigInteger()
          将此 BigDecimal 转换为 BigInteger
 BigInteger BigDecimal.toBigIntegerExact()
          将此 BigDecimal 转换为 BigInteger,以检查丢失的信息。
 BigInteger BigDecimal.unscaledValue()
          返回其值为此 BigDecimal非标度值BigInteger
static BigInteger BigInteger.valueOf(long val)
          返回其值等于指定 long 的值的 BigInteger。
 BigInteger BigInteger.xor(BigInteger val)
          返回其值为 (this ^ val) 的 BigInteger。
 

参数类型为 BigIntegerjava.math 中的方法
 BigInteger BigInteger.add(BigInteger val)
          返回其值为 (this + val) 的 BigInteger。
 BigInteger BigInteger.and(BigInteger val)
          返回其值为 (this & val) 的 BigInteger。
 BigInteger BigInteger.andNot(BigInteger val)
          返回其值为 (this & ~val) 的 BigInteger。
 int BigInteger.compareTo(BigInteger val)
          将此 BigInteger 与指定的 BigInteger 进行比较。
 BigInteger BigInteger.divide(BigInteger val)
          返回其值为 (this / val) 的 BigInteger。
 BigInteger[] BigInteger.divideAndRemainder(BigInteger val)
          返回包含 (this / val) 后跟 (this % val) 的两个 BigInteger 的数组。
 BigInteger BigInteger.gcd(BigInteger val)
          返回一个 BigInteger,其值是 abs(this)abs(val) 的最大公约数。
 BigInteger BigInteger.max(BigInteger val)
          返回此 BigInteger 和 val 的最大值。
 BigInteger BigInteger.min(BigInteger val)
          返回此 BigInteger 和 val 的最小值。
 BigInteger BigInteger.mod(BigInteger m)
          返回其值为 (this mod m) 的 BigInteger。
 BigInteger BigInteger.modInverse(BigInteger m)
          返回其值为 (this-1 mod m) 的 BigInteger。
 BigInteger BigInteger.modPow(BigInteger exponent, BigInteger m)
          返回其值为 (thisexponent mod m) 的 BigInteger。
 BigInteger BigInteger.multiply(BigInteger val)
          返回其值为 (this * val) 的 BigInteger。
 BigInteger BigInteger.or(BigInteger val)
          返回其值为 (this | val) 的 BigInteger。
 BigInteger BigInteger.remainder(BigInteger val)
          返回其值为 (this % val) 的 BigInteger。
 BigInteger BigInteger.subtract(BigInteger val)
          返回其值为 (this - val) 的 BigInteger。
 BigInteger BigInteger.xor(BigInteger val)
          返回其值为 (this ^ val) 的 BigInteger。
 

参数类型为 BigIntegerjava.math 中的构造方法
BigDecimal(BigInteger val)
          将 BigInteger 转换为 BigDecimal
BigDecimal(BigInteger unscaledVal, int scale)
          将 BigInteger 非标度值和 int 标度转换为 BigDecimal
BigDecimal(BigInteger unscaledVal, int scale, MathContext mc)
          将 BigInteger 非标度值和 int 标度转换为 BigDecimal(根据上下文设置进行舍入)。
BigDecimal(BigInteger val, MathContext mc)
          将 BigInteger 转换为 BigDecimal(根据上下文设置进行舍入)。
 

java.security.certBigInteger 的使用
 

返回 BigIntegerjava.security.cert 中的方法
 BigInteger X509CRLSelector.getMaxCRL()
          返回 maxCRLNumber 标准。
 BigInteger X509CRLSelector.getMinCRL()
          返回 minCRLNumber 标准。
abstract  BigInteger X509Certificate.getSerialNumber()
          获得证书的 serialNumber 值。
 BigInteger X509CertSelector.getSerialNumber()
          返回 serialNumber 标准。
abstract  BigInteger X509CRLEntry.getSerialNumber()
          获得此 X509CRLEntry 的序列号 userCertificate
 

参数类型为 BigIntegerjava.security.cert 中的方法
abstract  X509CRLEntry X509CRL.getRevokedCertificate(BigInteger serialNumber)
          获得具有给定证书 serialNumber 的 CRL 项(如果有)。
 void X509CRLSelector.setMaxCRLNumber(BigInteger maxCRL)
          设置 maxCRLNumber 标准。
 void X509CRLSelector.setMinCRLNumber(BigInteger minCRL)
          设置 minCRLNumber 标准。
 void X509CertSelector.setSerialNumber(BigInteger serial)
          设置 serialNumber 标准。
 

java.security.interfacesBigInteger 的使用
 

返回 BigIntegerjava.security.interfaces 中的方法
 BigInteger RSAPrivateCrtKey.getCrtCoefficient()
          返回 crtCoefficient。
 BigInteger RSAMultiPrimePrivateCrtKey.getCrtCoefficient()
          返回 crtCoefficient。
 BigInteger DSAParams.getG()
          返回基数 g
 BigInteger RSAKey.getModulus()
          返回该系数。
 BigInteger DSAParams.getP()
          返回素数 p
 BigInteger RSAPrivateCrtKey.getPrimeExponentP()
          返回 primeExponentP。
 BigInteger RSAMultiPrimePrivateCrtKey.getPrimeExponentP()
          返回 primeExponentP。
 BigInteger RSAPrivateCrtKey.getPrimeExponentQ()
          返回 primeExponentQ。
 BigInteger RSAMultiPrimePrivateCrtKey.getPrimeExponentQ()
          返回 primeExponentQ。
 BigInteger RSAPrivateCrtKey.getPrimeP()
          返回 primeP。
 BigInteger RSAMultiPrimePrivateCrtKey.getPrimeP()
          返回 primeP。
 BigInteger RSAPrivateCrtKey.getPrimeQ()
          返回 primeQ。
 BigInteger RSAMultiPrimePrivateCrtKey.getPrimeQ()
          返回 primeQ。
 BigInteger RSAPrivateKey.getPrivateExponent()
          返回专用指数。
 BigInteger RSAPublicKey.getPublicExponent()
          返回该公用指数。
 BigInteger RSAPrivateCrtKey.getPublicExponent()
          返回公用指数。
 BigInteger RSAMultiPrimePrivateCrtKey.getPublicExponent()
          返回公用指数。
 BigInteger DSAParams.getQ()
          返回子素数 q
 BigInteger ECPrivateKey.getS()
          返回专用密钥值 S。
 BigInteger DSAPrivateKey.getX()
          返回专用密钥值 x
 BigInteger DSAPublicKey.getY()
          返回公用密钥值 y
 

java.security.specBigInteger 的使用
 

声明为 BigIntegerjava.security.spec 中的字段
static BigInteger RSAKeyGenParameterSpec.F0
          公用指数值 F0 = 3。
static BigInteger RSAKeyGenParameterSpec.F4
          公用指数值 F4 = 65537。
 

返回 BigIntegerjava.security.spec 中的方法
 BigInteger EllipticCurve.getA()
          返回椭圆曲线的第一个系数 a
 BigInteger ECPoint.getAffineX()
          返回仿射 x 坐标 x
 BigInteger ECPoint.getAffineY()
          返回仿射 y 坐标 y
 BigInteger EllipticCurve.getB()
          返回椭圆曲线的第二个系数 b
 BigInteger RSAPrivateCrtKeySpec.getCrtCoefficient()
          返回 crtCoefficient。
 BigInteger RSAOtherPrimeInfo.getCrtCoefficient()
          返回素数的 crtCoefficient。
 BigInteger RSAMultiPrimePrivateCrtKeySpec.getCrtCoefficient()
          返回 crtCoefficient。
 BigInteger RSAOtherPrimeInfo.getExponent()
          返回素数的指数。
 BigInteger DSAParameterSpec.getG()
          返回基数 g
 BigInteger DSAPublicKeySpec.getG()
          返回基数 g
 BigInteger DSAPrivateKeySpec.getG()
          返回基数 g
 BigInteger RSAPublicKeySpec.getModulus()
          返回该系数。
 BigInteger RSAPrivateKeySpec.getModulus()
          返回系数。
 BigInteger ECParameterSpec.getOrder()
          返回生成器的顺序。
 BigInteger DSAParameterSpec.getP()
          返回素数 p
 BigInteger ECFieldFp.getP()
          返回此素数有限字段的素数 p
 BigInteger DSAPublicKeySpec.getP()
          返回素数 p
 BigInteger DSAPrivateKeySpec.getP()
          返回素数 p
 BigInteger RSAOtherPrimeInfo.getPrime()
          返回素数。
 BigInteger RSAPrivateCrtKeySpec.getPrimeExponentP()
          返回 primeExponentP。
 BigInteger RSAMultiPrimePrivateCrtKeySpec.getPrimeExponentP()
          返回 primeExponentP。
 BigInteger RSAPrivateCrtKeySpec.getPrimeExponentQ()
          返回 primeExponentQ。
 BigInteger RSAMultiPrimePrivateCrtKeySpec.getPrimeExponentQ()
          返回 primeExponentQ。
 BigInteger RSAPrivateCrtKeySpec.getPrimeP()
          返回 primeP。
 BigInteger RSAMultiPrimePrivateCrtKeySpec.getPrimeP()
          返回 primeP。
 BigInteger RSAPrivateCrtKeySpec.getPrimeQ()
          返回 primeQ。
 BigInteger RSAMultiPrimePrivateCrtKeySpec.getPrimeQ()
          返回 primeQ。
 BigInteger RSAPrivateKeySpec.getPrivateExponent()
          返回专用指数。
 BigInteger RSAPublicKeySpec.getPublicExponent()
          返回该公用指数。
 BigInteger RSAPrivateCrtKeySpec.getPublicExponent()
          返回公用指数。
 BigInteger RSAMultiPrimePrivateCrtKeySpec.getPublicExponent()
          返回公用指数。
 BigInteger RSAKeyGenParameterSpec.getPublicExponent()
          返回公用指数值。
 BigInteger DSAParameterSpec.getQ()
          返回子素数 q
 BigInteger DSAPublicKeySpec.getQ()
          返回子素数 q
 BigInteger DSAPrivateKeySpec.getQ()
          返回子素数 q
 BigInteger ECFieldF2m.getReductionPolynomial()
          对于多项式方法,返回一个 BigInteger,其第 i 位对应于降序排列多项式的第 i 个系数,对于常规方法,返回 null。
 BigInteger ECPrivateKeySpec.getS()
          返回专用值 S。
 BigInteger DSAPrivateKeySpec.getX()
          返回专用密钥 x
 BigInteger DSAPublicKeySpec.getY()
          返回公用密钥 y
 

参数类型为 BigIntegerjava.security.spec 中的构造方法
DSAParameterSpec(BigInteger p, BigInteger q, BigInteger g)
          创建一个具有指定参数值的新的 DSAParameterSpec。
DSAPrivateKeySpec(BigInteger x, BigInteger p, BigInteger q, BigInteger g)
          创建一个具有指定参数值的新 DSAPrivateKeySpec。
DSAPublicKeySpec(BigInteger y, BigInteger p, BigInteger q, BigInteger g)
          创建一个具有指定参数值的新 DSAPublicKeySpec。
ECFieldF2m(int m, BigInteger rp)
          使用多项式方法创建一个椭圆曲线首数为 2(具有 2^m 个元素)的有限字段。
ECFieldFp(BigInteger p)
          根据指定的素数 p 创建一个椭圆曲线素数的有限字段。
ECParameterSpec(EllipticCurve curve, ECPoint g, BigInteger n, int h)
          创建基于指定值的椭圆曲线域参数。
ECPoint(BigInteger x, BigInteger y)
          根据指定的仿射 x 坐标 x 和仿射 y 坐标 y 创建 ECPoint。
ECPrivateKeySpec(BigInteger s, ECParameterSpec params)
          使用指定的参数值创建一个新的 ECPrivateKeySpec。
EllipticCurve(ECField field, BigInteger a, BigInteger b)
          使用指定的椭圆字段 field 以及系数 ab 创建椭圆曲线。
EllipticCurve(ECField field, BigInteger a, BigInteger b, byte[] seed)
          使用指定的椭圆字段 field、系数 ab,以及用于生成曲线的 seed 创建椭圆曲线。
RSAKeyGenParameterSpec(int keysize, BigInteger publicExponent)
          构造一个具有给定密钥大小和公用指数值的新的 RSAParameterSpec 对象。
RSAMultiPrimePrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, BigInteger crtCoefficient, RSAOtherPrimeInfo[] otherPrimeInfo)
          给定系数、publicExponent、privateExponent、primeP、primeQ、primeExponentP、primeExponentQ、crtCoefficient 和如 PKCS#1 v2.1 中所定义的 otherPrimeInfo,创建一个新的 RSAMultiPrimePrivateCrtKeySpec
RSAOtherPrimeInfo(BigInteger prime, BigInteger primeExponent, BigInteger crtCoefficient)
          给定如 PKCS#1 中所定义的素数、primeExponent 和 crtCoefficient,创建一个新的 RSAOtherPrimeInfo
RSAPrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, BigInteger crtCoefficient)
          给定在 PKCS#1 v2.1 中所定义的系数、publicExponent、privateExponent、 primeP、primeQ、primeExponentP、primeExponentQ 和 crtCoefficient,创建一个新的 RSAPrivateCrtKeySpec
RSAPrivateKeySpec(BigInteger modulus, BigInteger privateExponent)
          创建一个新的 RSAPrivateKeySpec。
RSAPublicKeySpec(BigInteger modulus, BigInteger publicExponent)
          创建一个新的 RSAPublicKeySpec。
 

java.utilBigInteger 的使用
 

返回 BigIntegerjava.util 中的方法
 BigInteger Scanner.nextBigInteger()
          将输入信息的下一个标记扫描为一个 BigInteger
 BigInteger Scanner.nextBigInteger(int radix)
          将输入信息的下一个标记扫描为一个 BigInteger
 

javax.crypto.interfacesBigInteger 的使用
 

返回 BigIntegerjavax.crypto.interfaces 中的方法
 BigInteger DHPrivateKey.getX()
          返回私钥值 x
 BigInteger DHPublicKey.getY()
          返回公钥值 y
 

javax.crypto.specBigInteger 的使用
 

返回 BigIntegerjavax.crypto.spec 中的方法
 BigInteger DHPublicKeySpec.getG()
          返回基生成器 g
 BigInteger DHPrivateKeySpec.getG()
          返回基生成器 g
 BigInteger DHParameterSpec.getG()
          返回基生成器 g
 BigInteger DHPublicKeySpec.getP()
          返回质数模数 p
 BigInteger DHPrivateKeySpec.getP()
          返回质数模数 p
 BigInteger DHParameterSpec.getP()
          返回质数模数 p
 BigInteger DHPrivateKeySpec.getX()
          返回私有值 x
 BigInteger DHPublicKeySpec.getY()
          返回公有值 y
 

参数类型为 BigIntegerjavax.crypto.spec 中的构造方法
DHParameterSpec(BigInteger p, BigInteger g)
          使用质数模数 p 和基生成器 g 为 Diffie-Hellman 构造一个参数集。
DHParameterSpec(BigInteger p, BigInteger g, int l)
          使用质数模数 p、基生成器 g 以及以位为单位的随机指数大小 l(私有值)为 Diffie-Hellman 构造一个参数集。
DHPrivateKeySpec(BigInteger x, BigInteger p, BigInteger g)
          带有一个私有值 x、一个质数模数 p 以及一个基生成器 g 的构造方法。
DHPublicKeySpec(BigInteger y, BigInteger p, BigInteger g)
          带有一个公有值 y、一个质数模数 p 以及一个基生成器 g 的构造方法。
 

javax.security.certBigInteger 的使用
 

返回 BigIntegerjavax.security.cert 中的方法
abstract  BigInteger X509Certificate.getSerialNumber()
          获得证书的 serialNumber 值。
 

javax.xml.datatypeBigInteger 的使用
 

返回 BigIntegerjavax.xml.datatype 中的方法
abstract  BigInteger XMLGregorianCalendar.getEon()
          返回 XML Schema 1.0 日期时间数据类型字段的高顺序组件,用于 year
abstract  BigInteger XMLGregorianCalendar.getEonAndYear()
          返回 year XML Schema 1.0 的日期时间数据类型字段。
 

参数类型为 BigIntegerjavax.xml.datatype 中的方法
abstract  Duration DatatypeFactory.newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
          获取 Duration 的新实例,它将 Duration 指定为正数的年、月、日、时、分、秒。
 Duration DatatypeFactory.newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
          使用 XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration 中定义的指定 dayhourminutesecond 创建类型为 xdt:dayTimeDurationDuration
 Duration DatatypeFactory.newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
          使用 XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration 中定义的指定 yearmonth 创建类型为 xdt:yearMonthDurationDuration
abstract  XMLGregorianCalendar DatatypeFactory.newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
          W3C XML Schema 1.0 推荐考虑完整值空间的构造方法,该方法用于 xsd:dateTime 和相关的内置数据类型。
abstract  void XMLGregorianCalendar.setYear(BigInteger year)
          设置 XSD dateTime year 字段的低和高顺序组件。
 


JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策