BigInteger类modInverse()方法 (BigInteger Class modInverse() method)
modInverse() method is available in java.math package.
modInverse()方法在java.math包中可用。
modInverse() method is used to calculate the mod inverse by using the inverse of (this BigInteger) mod the given BigInteger (val).
modInverse()方法用于通过使用给定BigInteger(val)的(this BigInteger)mod的逆来计算mod逆。
modInverse() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
modInverse()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
modInverse() method may throw an exception at the time of returning mod inverse.
在返回mod逆时, modInverse()方法可能会引发异常。
ArithmeticException: This exception may throw when the given parameter holds value 0 or negative.
ArithmeticException :当给定参数的值为0或负数时,可能引发此异常。
Syntax:
句法:
public BigInteger modInverse(BigInteger val);
Parameter(s):
参数:
BigInteger val – represents the object by which to calculate mod inverse.
BigInteger val –表示计算逆模的对象。
Return value:
返回值:
The return type of this method is BigInteger, it returns the mod inverse value by using [ inv (this BigInteger) mod (BigInteger val) ].
此方法的返回类型为BigInteger ,它通过使用[inv(this BigInteger)mod(BigInteger val)]返回mod逆值。
Example:
例:
// Java program to demonstrate the example
// of BigInteger modInverse(BigInteger val) method of BigInteger
import java.math.*;
public class ModInverseOfBI {
public static void main(String args[]) {
// Initialize three variables str1 , str2 and str3
String str1 = "101";
String str2 = "13";
String str3 = "10";
// Initialize three BigInteger objects
BigInteger b_int1 = new BigInteger(str1);
BigInteger b_int2 = new BigInteger(str2);
BigInteger b_int3 = new BigInteger(str3);
// Display b_int1 , b_int2 and b_int3
System.out.println("b_int1: " + b_int1);
System.out.println("b_int2: " + b_int2);
System.out.println("b_int3: " + b_int3);
System.out.println();
// Here, we are calculating modInverse between
// two BigInteger values [inv(this BigInteger
// b_int1) mod (BigInteger b_int3) ] by using
// modInverse(BigInteger) method
BigInteger modinv_val = b_int1.modInverse(b_int3);
System.out.println("b_int1.modInverse(b_int3): " + modinv_val);
// Here, we are calculating modInverse between
// two BigInteger values [inv(this BigInteger
// b_int2) mod (BigInteger b_int3) ] by using
// modInverse(BigInteger) method
modinv_val = b_int2.modInverse(b_int3);
System.out.println("b_int2.modInverse(b_int3): " + modinv_val);
}
}
Output
输出量
b_int1: 101
b_int2: 13
b_int3: 10b_int1.modInverse(b_int3): 1
b_int2.modInverse(b_int3): 7
翻译自: https://www.includehelp.com/java/biginteger-modinverse-method-with-example.aspx