所以这个程序的要点是创建一个Rational类,这样当你运行它时,会出现一个GUI输入并要求分子和分母。然后它将返回减少的分数。但我不断收到此错误消息,我不知道为什么。这是迄今为止的计划:
import javax.swing.JOptionPane;
public class lab8
{
public static void main (String args[])
{
String strNbr1 = JOptionPane.showInputDialog("Enter Numerator ");
String strNbr2 = JOptionPane.showInputDialog("Enter Denominator ");
int num = Integer.parseInt(strNbr1);
int den = Integer.parseInt(strNbr2);
Rational r = new Rational(num,den);
JOptionPane.showMessageDialog(null,r.getNum()+"/"+r.getDen()+" equals "+r.getDecimal());
System.exit(0);
}
}
class Rational
{
private int num;
private int den;
public Rational()
{
num = 0;
den = 1;
}
public double getNum()
{
return num;
}
public int getDen()
{
return den;
}
}
答案 0 :(得分:2)
您正在尝试调用不存在的构造函数。 你的类构造函数没有任何要求:
public Rational()
虽然应该要求2个整数:
public Rational(int num, int den){
this.num = num;
this.den = den;
}
所以你可以将num
和den
传递给它,就像你想要的那样
Rational r = new Rational(num,den);