从字符串解析分数
Fraction fraction = Fraction.getFraction( userInput );
double value = fraction.doubleValue();
把假分数转换为真分数的能力
abs() 返回某个 Fraction 的绝对值
add(Fraction fraction) 把两个 Fraction 对象相加
subtract(Fraction fraction) 从当前 Fraction 中减去参数
multiplyBy(Fraction fraction) 将参数和当前 Fraction 相乘
divideBy(Fraction fraction) 将当前 Fraction 除以参数
reduce() 将 Fraction 化简为最小分母
negate() 返回 -1 * Fraction
invert() 交换分子和分母
getNumerator() 返回分子值
getDenominator() 返回分母值
getProperNumerator() 返回相应真分数的分子
getProperWhole() 返回相应真分数的数字
pow() 对 Fraction加幂
NumberUtils.max()与NumberUtils.min()方法来从基本类型数组中检索出最小或最大值
Max类和Min类 统计数组的最值
Max maximum = new Max();
Min minimum = new Min();
double max = maximum.evaluate( array, 0, array.length );
double min = minimum.evaluate( array, 0, array.length );
为变量定义一组可接收的值,并检测变量是否落在该范围内。 还可以检验某个 Range 中是否包含另一个 Range:containsRange(),或者某个Range是否和另一个Range发生重叠:overlapsRange()
使用RandomUtils类生成int float double boolean型随机变量。相比起java的Random类,该方法更加简单
提供了处理复数、计算统计量、矩阵实现、特殊函数、连分数、数值求根法、插值以及双变量回归分析等一系列实用工具。
要获取有关数学方面更权威的指南,不妨购买一本 Numerical Recipes in C++ 或者Numerical Recipes in C(Cambridge University Press)。
利用StatUtils计算 平均值、中值、方差、最小值和最大值
其他类实现 百分点、几何平均数、标准差、偏度和峰度
如求解如下线性方程:
3x + 20y + 89z = 1324
4x + 40y + 298z = 2999
7x - 21y + 0.42z = 2039
可使用 Commons Math 提供的 RealMatrix和RealMatrixImpl类。它能把这个线性方程系统表示为 Ax=B 的形式,正如图 8-3 所示。首先把 A 的系数放入一个RealMatrix实例中,并把 B 置入一个double[]型数组中。然后调用RealMatrix 上的solve()方法以得到一个double[]型数组,该数组含有所有满足该线性方程系统的x、y和z值。当方程是不可解的,InvalidMatrixException异常就会被抛出,指出该矩阵是
奇异矩阵。此外,如果 B 的行数不等于 A 的列数,solve()将抛出 InvalidMatrix-Exception 异常。
可使用Math提供的Complex和ComplexMath类来表示复数,并执行对复数的算术操作。ComplexFormat类用于输出某个复数的实数部分和虚数部分。
可将异常数据点添加到一个Commons Math SimpleRegression实例中。这个类能用于计算斜率、 slope confidence 以及名为 R-square 的相关度。SimpleRegression类能对一个独立变量进行线性二乘回归分析,并通过向该模型添加异常数据点而求得方程 y =ax + b的参数。
问题:你正在运行一个需很长时间的程序,并需要在结束之前向用户显示剩余时间的估计值。
解决: 可使用 Commons Math 的 SimpleRegression以及 Commons Lang 的 StopWatch 来创建一个 ProcessEstimator类,该类可用于预测某个指定程序将在何时结束。你的程序需要处理许多条记录并将运行好几个小时,在这种情况下,你会希望提供一些反馈信息。此外,如果确信每个记录的处理时间都大致相等,你就可以使用SimpleRegression的斜度和截距方法估算出所有记录将在何时处理完毕。