在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中的分数类。