相关疑难解决方法(0)

在Java中表示分数的最佳方式?

我正在尝试使用Java中的分数.

我想实现算术函数.为此,我首先要求一种方法来规范化功能.我知道我不能加1/6和1/2,直到我有一个共同点.我将不得不添加1/6和3/6.一个天真的方法会让我添加2/12和6/12,然后减少.如何实现性能损失最小的共同点?什么算法最适合这个?


版本8(感谢hstoerr):

改进包括:

  • equals()方法现在与compareTo()方法一致
final class Fraction extends Number {
    private int numerator;
    private int denominator;

    public Fraction(int numerator, int denominator) {
        if(denominator == 0) {
            throw new IllegalArgumentException("denominator is zero");
        }
        if(denominator < 0) {
            numerator *= -1;
            denominator *= -1;
        }
        this.numerator = numerator;
        this.denominator = denominator;
    }

    public Fraction(int numerator) {
        this.numerator = numerator;
        this.denominator = 1;
    }

    public int getNumerator() {
        return this.numerator;
    }

    public int getDenominator() {
        return this.denominator;
    } …
Run Code Online (Sandbox Code Playgroud)

java math fractions

95
推荐指数
7
解决办法
9万
查看次数

标签 统计

fractions ×1

java ×1

math ×1