java - 分数类不能应用于给定类型?

标签 java windows

代码抛出以下错误:类 Fraction 中的方法GreatestCommonDivisor 无法应用于给定类型; 然后是

required: int,int found: no arguments reason: actual and formal argument lists differ in length

我不太确定为什么会出现错误,我尝试更改一些内容但没有成功


class Fraction{
    private int numerator;
    private int denominator;

    public Fraction(int _num1, int _num2){
        numerator = _num1;
        denominator = _num2;
    }

    public int greatestCommonDivisor(int num1, int num2){
        int greatestCommon = 1;
        for(int i = 1; i <= num1 && i <= num2; i++){
            if(num1 % i == 0 && num2 % i == 0)
            greatestCommon = i;}
            return greatestCommon;
        }
}

public class testing2
{
    public static void main(String[] arg)
    {
        Scanner in = new Scanner(System.in);

        int num11 = in.nextInt();
        int num22 = in.nextInt();

        Fraction gcd = new Fraction(num11, num22);
        System.out.println(gcd.greatestCommonDivisor());
    }
}

最佳答案

原因很简单:

你必须像这样调用方法

System.out.println(gcd.greatestCommonDivisor(num11, num22));

为什么?

因为你的方法定义为

int greatestCommonDivisor(int num1, int num2)

所以,只需传递您使用扫描仪读取的参数即可完成! :)

关于java - 分数类不能应用于给定类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58619479/

相关文章:

java - Blackberry 的数据库选项

php - 支持 SVN 和 FTP 的快速 Windows PHP 编辑器?

运行 mercurial 命令时 Windows 批处理文件退出

windows - 如何使用 VBScript 终止进程

c# - 如何禁止 Visual C# 事件出现在我最近的文档中?

c# - 查找 InkCanvas 中每个点的坐标

java - 加载 java.util.logging.config.file 进行默认初始化

java - 日期格式转换在 Java 中未按预期工作

java - 无法在 Selenium 中将 PhantomJS 驱动程序与 Firefox 配置文件一起使用

java - 在 Apache Commons Validator 的帮助下出现 NoClassDefFoundError 问题