首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java调用变量

Java调用变量
EN

Stack Overflow用户
提问于 2015-09-20 06:37:58
回答 1查看 238关注 0票数 0

我是Java新手,我正在尝试创建一个ADT。我的ADT包括通过分子和分母的输入来创建和处理分数。我想要我的方法之一,把两个分数相加在一起,然后根据两个和的gcd返回一个简化的分数。我遇到的问题是如何实例化这两个分数(分子和分母)的成分。该方法应该使用其他的分数,表示为public Rational add(Rational other)。我分配的第一个变量是

代码语言:javascript
运行
复制
int d1 = this.denominator;
int d2 = other.denominator;

但这似乎行不通。以下是迄今为止的方法:

代码语言:javascript
运行
复制
public Rational add(Rational other){
  int d1 = this.denominator;
  int d2 = other.denominator;
  int dtotal = d1*d2;
  int n1 = this.numerator*d2;
  int n2 = other.numerator*d1;
  int ntotal = n1+n2;
  if(ntotal>dtotal){
    for(int i=1; i<=ntotal; i++){
      if(ntotal%i==0 && dtotal%i==0){
        gcd=i;
      }
    }
  }else if(dtotal>ntotal){
    for(int i=1;i<=dtotal;i++){
      if(dtotal%i==0 && ntotal%i==0){
        gcd=i;
      }
    }
  }else if(dtotal==ntotal){
    gcd=numerator;
  }
  numerator = ntotal/gcd;
  denominator = dtotal/gcd;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-20 07:26:46

您需要用所需的方法在类之外定义接口。这是样品,请根据您的需要进行编辑。

代码语言:javascript
运行
复制
interface Rational {    
  public int getNumerator();
  public int getDenominator();
  public Rational add(Rational other);
  public Rational multiply(Rational other);
  public int compareTo(Rational other);
}

现在,您的类应该定义如下:

代码语言:javascript
运行
复制
public class RationalC implements Rational {

  int gcd;
  int numerator;
  int denominator;


  @Override
  public int getNumerator() {
    return numerator;
  }

  @Override
  public int getDenominator() {
    return denominator;
  }

  @Override
  public Rational add(Rational other) {
    return null;
  }

  @Override
  public Rational multiply(Rational other) {
    return null;
  }

  @Override
  public int compareTo(Rational other) {
    return 0;
  }
}

添加addmultiply方法定义。使用getNumerator()getDenominator()访问这些值,而不是直接访问它们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32676575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档