标识方法编写中的预期错误

时间:2017-10-13 01:07:20

标签: java

public class Rational{
    public Rational (int numerator, denominator){
    if (denominator < 0){
        system.out.println("Denominator cannot be negative value. Changing rational to have positive denominator...");
        denominator = -denominator;
        numerator = -numerator;
    }
    if (denominator == 0){
        system.out.println("Denominator cannot be zero, reinput denominator.");
        int n = numerator;
        int d = denominator;
    }
}
//end of initialization
//behaviors
public Rational inverse(int n, d){
    if (numerator == 0){
        int temp = numerator;
        numerator = denominator;
        denominator = temp;
    }
    else system.out.println("Error, the inverse results in division by zero.");
}
public Rational simplify(int n, d){
    if (n%d == 0){
        return n;
    }
    else if (n < d){
        return simplify (d, n);
    }
    else return simplify(d, n%d);
    numerator = numerator / n;
    denominator = denominator /n;
}
}

这里有新的Java学生,我在第2行,第16行和第24行遇到了“标识符期望”错误。所有这些行都是公共Rational,并且错误指向了右括号。我试过在这里查看类似的问题,但我无法弄清楚我的错误。从我看到的错误与定义块外的方法有关,但它看起来像是在我身上。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您的计划存在以下几个问题:

  1. 您需要在函数的每个参数之前声明类型。这就是导致您收到错误消息的原因。例如,您需要:

    public Rational inverse(int n, int d){

    public Rational (int numerator, int denominator){

  2. 您需要在s中大写System

  3. 您需要在numerator课程中声明denominatorDenominator字段。例如:

    public class Rational{ int numerator; int denominator;

相关问题