淘先锋技术网

首页 1 2 3 4 5 6 7

在Java中,我们可以使用分数对象的方式计算两个分数的和。在本文中,我们将演示如何计算两个分数的和以及如何使用Java中的分数类。

public class Fraction {
private int numerator;
private int denominator;
public Fraction(int numerator, int denominator) {
if (denominator == 0) {
throw new IllegalArgumentException("denominator can't be zero");
}
int gcd = gcd(numerator, denominator);
this.numerator = numerator / gcd;
this.denominator = denominator / gcd;
}
public Fraction add(Fraction other) {
int newDenominator = lcm(this.denominator, other.denominator);
int newNumerator = this.numerator * (newDenominator / this.denominator)
+ other.numerator * (newDenominator / other.denominator);
return new Fraction(newNumerator, newDenominator);
}
private static int gcd(int a, int b) {
return b == 0 ? a : gcd(b, a % b);
}
private static int lcm(int a, int b) {
return a / gcd(a, b) * b;
}
@Override
public String toString() {
return numerator + "/" + denominator;
}
}

上面的代码定义了一个Fraction类,它包含numerator和denominator两个成员变量,分别表示分子和分母。

add()方法实现了两个分数相加,最后返回一个新的分数对象。上面的代码还实现了两个静态方法gcd()和lcm(),分别用于求最大公约数和最小公倍数。

接下来我们将使用上述代码计算两个分数的和,并输出结果。

Fraction a = new Fraction(1, 2);
Fraction b = new Fraction(3, 4);
Fraction c = a.add(b);
System.out.println(c);

上述代码创建了两个分数,1/2和3/4,然后计算它们的和并将结果存储在变量c中。最后,我们输出c的值,得到的结果是5/4。

到此为止,我们已经成功的使用Java计算了两个分数的和。这个简单的例子展示了Java面向对象编程的优点,同时也能学习到如何使用Java中的分数类。