类 Fraction
java.lang.Object
java.lang.Number
org.hipparchus.fraction.Fraction
- 所有已实现的接口:
-
Serializable,Comparable<Fraction>,FieldElement<Fraction>
public class Fraction extends Number implements FieldElement<Fraction>, Comparable<Fraction>, Serializable
有理数的表示。
- 另请参阅:
-
嵌套类概要
嵌套类 -
字段概要
字段修饰符和类型字段说明static final Fraction代表“4/5”的分数。static final Fraction代表“-1 / 1”的分数。static final Fraction代表“1”的分数。static final Fraction代表“1/5”的分数。static final Fraction代表“1/2”的分数。static final Fraction代表“1/4”的分数。static final Fraction代表“1/3”的分数。static final Fraction代表“3/5”的分数。static final Fraction代表“3/4”的分数。static final Fraction代表“2 / 1”的分数。static final Fraction代表“2/5”的分数。static final Fraction代表“2/4”的分数。static final Fraction代表“2/3”的分数。static final Fraction代表“0”的分数。 -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明abs()返回此分数的绝对值。add(int i) 将整数添加到分数。将此分数的值添加到另一个分数,以最简形式返回结果。int根据大小将此对象与另一个对象进行比较。convergent(double value, int maxConvergents, Fraction.ConvergenceTest convergenceTest) 返回用于逼近给定值的收敛步骤系列的最后一个元素。convergents(double value, int maxConvergents) 从实数生成一系列收敛分数的流。divide(int i) 将分数除以整数。将此分数的值除以另一个分数,以最简形式返回结果。double将分数作为double返回。boolean检查两个分数是否相等。float将分数作为float返回。int访问分母。getField()获取实例所属的Field。int访问分子。doublegetReal()获取数字的实际值。static FractiongetReducedFraction(int numerator, int denominator) 使用分数Y/Z的两部分创建一个Fraction实例。inthashCode()获取分数的哈希码。intintValue()将分数作为int返回。boolean检查分数是否为整数。long将分数作为long返回。multiply(int i) 将分数乘以整数。将此分数的值乘以另一个分数,以最简形式返回结果。negate()返回此分数的加法逆元。double将分数百分比作为double返回。返回此分数的乘法逆元。intsignum()返回此分数的符号函数。subtract(int i) 从分数中减去整数。将另一个分数的值从此分数的值中减去,以最简形式返回结果。toString()返回表示此分数的String,即“num / dem”或如果分母为1则只返回“num”。从类继承的方法 java.lang.Number
byteValue, shortValue从接口继承的方法 org.hipparchus.FieldElement
isZero
-
字段详细资料
-
TWO
代表“2 / 1”的分数。 -
ONE
代表“1”的分数。 -
ZERO
代表“0”的分数。 -
FOUR_FIFTHS
代表“4/5”的分数。 -
ONE_FIFTH
代表“1/5”的分数。 -
ONE_HALF
代表“1/2”的分数。 -
ONE_QUARTER
代表“1/4”的分数。 -
ONE_THIRD
代表“1/3”的分数。 -
THREE_FIFTHS
代表“3/5”的分数。 -
THREE_QUARTERS
代表“3/4”的分数。 -
TWO_FIFTHS
代表“2/5”的分数。 -
TWO_QUARTERS
代表“2/4”的分数。 -
TWO_THIRDS
代表“2/3”的分数。 -
MINUS_ONE
代表“-1 / 1”的分数。
-
-
构造器详细资料
-
Fraction
给定双精度值创建一个分数。- 参数:
-
value- 要转换为分数的双精度值。 - 抛出:
-
MathIllegalStateException- 如果连分数失败导致无法收敛。
-
Fraction
给定双精度值和允许的最大误差创建一个分数。参考:
- 连分数 方程式 (11) 和 (22)-(26)
- 参数:
-
value- 要转换为分数的双精度值。 -
epsilon- 允许的最大误差。结果分数与value的绝对值在epsilon范围内。 -
maxIterations- 最大收敛次数 - 抛出:
-
MathIllegalStateException- 如果连分数失败导致无法收敛。
-
Fraction
给定双精度值和最大分母创建一个分数。参考:
- 连分数 方程式 (11) 和 (22)-(26)
- 参数:
-
value- 要转换为分数的双精度值。 -
maxDenominator- 分母的最大允许值 - 抛出:
-
MathIllegalStateException- 如果连分数失败导致无法收敛
-
Fraction
public Fraction(int num) 从整数创建一个分数。该分数为num / 1。- 参数:
-
num- 分子。
-
Fraction
public Fraction(int num, int den) 给定分子和分母创建一个分数。将分数化简为最简形式。- 参数:
-
num- 分子。 -
den- 分母。 - 抛出:
-
MathRuntimeException- 如果分母为零
-
-
方法详细资料
-
convergents
从实数生成一系列收敛分数的流。- 参数:
-
value- 要逼近的值 -
maxConvergents- 最大收敛次数。 - 返回:
-
逼近
value的Fraction收敛分数流 - 从以下版本开始:
- 2.1
-
convergent
public static Pair<Fraction,Boolean> convergent(double value, int maxConvergents, Fraction.ConvergenceTest convergenceTest) 返回收敛步骤系列的最后一个元素,以逼近给定值。该系列在满足给定的
convergenceTest或最多检查maxConvergents个元素后终止。返回的Pair由终端的Fraction和一个Boolean组成,指示它是否满足给定的收敛测试。如果返回的pair的值为false,则检查了位置maxConvergents的元素,但未能满足convergenceTest。调用者可以决定是否接受结果,或者丢弃它。如果只关注终端元素,则此方法通常比convergents(double, int)更快。- 参数:
-
value- 要逼近的值 -
maxConvergents- 要检查的最大收敛数 -
convergenceTest- 系列是否在某一步收敛的测试 - 返回:
- 收敛元素系列的最后一个元素和一个布尔值,指示该元素是否满足指定的收敛测试
-
getReal
public double getReal()获取数字的实际值。- 指定者:
-
getReal在接口中FieldElement<Fraction> - 返回:
- 实际值
-
isInteger
public boolean isInteger()检查分数是否为整数。- 返回:
- 如果分数是整数,则为true
-
signum
public int signum()返回此分数的符号函数。如果指定值为负,则返回值为-1;如果指定值为零,则返回值为0;如果指定值为正,则返回值为1。
- 返回:
- 此分数的符号函数
- 从以下版本开始:
- 1.7
-
abs
返回此分数的绝对值。- 返回:
- 绝对值。
-
compareTo
根据大小将此对象与另一个对象进行比较。- 指定者:
-
compareTo在接口中Comparable<Fraction> - 参数:
-
object- 要比较的对象 - 返回:
-
如果此小于
object,则为-1;如果此大于object,则为+1;如果它们相等,则为0。
-
doubleValue
public double doubleValue()将分数作为double获取。这将分数计算为分子除以分母。- 指定者:
-
doubleValue在类中Number - 返回:
-
分数作为
double
-
equals
测试两个分数是否相等。如果两个分数的最简分子和分母相同,则认为两个分数相等。 -
floatValue
public float floatValue()将分数作为float获取。这将分数计算为分子除以分母。- 指定者:
-
floatValue在类中Number - 返回:
-
分数作为
float
-
getDenominator
public int getDenominator()访问分母。- 返回:
- 分母。
-
getNumerator
public int getNumerator()访问分子。- 返回:
- 分子。
-
hashCode
public int hashCode()为分数获取哈希码。 -
intValue
public int intValue()将分数作为int获取。这返回分数的整数部分。 -
longValue
public long longValue()将分数作为long获取。这返回分数的整数部分。 -
negate
返回此分数的加法逆元。- 指定者:
-
negate在接口中FieldElement<Fraction> - 返回:
- 此分数的否定。
-
reciprocal
返回此分数的乘法逆元。- 指定者:
-
reciprocal在接口中FieldElement<Fraction> - 返回:
- 倒数分数
-
add
将此分数的值与另一个分数的值相加,以简化形式返回结果。该算法遵循Knuth, 4.5.1。- 指定者:
-
add在接口中FieldElement<Fraction> - 参数:
-
fraction- 要相加的分数,不能为null - 返回:
-
具有结果值的
Fraction实例 - 抛出:
-
NullArgumentException- 如果分数为null -
MathRuntimeException- 如果结果的分子或分母超过Integer.MAX_VALUE
-
add
将整数添加到分数。- 参数:
-
i- 要添加的integer。 - 返回:
- this + i
-
subtract
从此值减去另一个分数的值,以简化形式返回结果。- 指定者:
-
subtract在接口中FieldElement<Fraction> - 参数:
-
fraction- 要减去的分数,不能为null - 返回:
-
具有结果值的
Fraction实例 - 抛出:
-
NullArgumentException- 如果分数为null -
MathRuntimeException- 如果结果的分子或分母无法表示为int。
-
subtract
从分数中减去整数。- 参数:
-
i- 要减去的integer。 - 返回:
- this - i
-
multiply
将此分数的值乘以另一个分数的值,以简化形式返回结果。- 指定者:
-
multiply在接口中FieldElement<Fraction> - 参数:
-
fraction- 用于相乘的分数,不得为null - 返回:
-
具有结果值的
Fraction实例 - 抛出:
-
NullArgumentException- 如果分数为null -
MathRuntimeException- 如果结果的分子或分母超过Integer.MAX_VALUE
-
multiply
将分数乘以整数。- 指定者:
-
multiply在接口中FieldElement<Fraction> - 参数:
-
i- 要乘以的整数 - 返回:
- this * i
-
divide
将此分数的值除以另一个分数。- 指定者:
-
divide在接口中FieldElement<Fraction> - 参数:
-
fraction- 要除以的分数,不得为null - 返回:
-
具有结果值的
Fraction实例 - 抛出:
-
IllegalArgumentException- 如果分数为null -
MathRuntimeException- 如果要除以的分数为零 -
MathRuntimeException- 如果结果的分子或分母超过Integer.MAX_VALUE
-
divide
将分数除以整数。- 参数:
-
i- 要除以的整数 - 返回:
- this * i
-
percentageValue
public double percentageValue()以double形式获取分数百分比。这将计算分数作为分子除以分母乘以100。- 返回:
-
分数百分比作为
double。
-
getReducedFraction
创建具有分数Y/Z的2部分的Fraction实例。任何负号都解析为在分子上。
- 参数:
-
numerator- 分子,例如'three sevenths'中的three -
denominator- 分母,例如'three sevenths'中的seven - 返回:
- 具有简化的分子和分母的新分数实例
- 抛出:
-
MathRuntimeException- 如果分母为zero
-
toString
返回表示此分数的String,即"num / dem"或如果分母为一则为"num"。 -
getField
获取实例所属的Field。- 指定者:
-
getField在接口中FieldElement<Fraction> - 返回:
-
实例所属的
Field
-