代码抛出以下错误:类 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/