java布尔方法

时间:2013-01-23 07:12:07

标签: java methods boolean

我的教科书中有一个问题:

编写一个以两个整数作为参数的方法倍数,如果第一个整数可以整除,则返回true 均匀地由第二个(即分裂后没有剩余);否则,该方法应该 返回false。将此方法合并到一个应用程序中,使用户能够输入值来测试 方法

我编写了这段代码,但它不起作用:

public class project1 {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int a, b;
        System.out.println("enter the first number");
        a = input.nextInt();

        System.out.println("enter the first number");
        b = input.nextInt();
    }

    public static boolean multiple(int g, int c) {

        int g, c;

        if (g % c = 0) {
            return true;
        } else {
            return false;

        };
    }
}

4 个答案:

答案 0 :(得分:5)

//int g, c;
^^

删除此行..


if (g%c==0){
        ^

您需要使用==来检查相等性。


您实际上可以执行以下操作以减少几行...

public static boolean multiple(int g, int c) {
    return g%c == 0;
}

答案 1 :(得分:1)

您的方法中有太多错误。实际上应该是这样的:

public static boolean multiple(int g, int c) {
    return g % c == 0;
}

答案 2 :(得分:1)

首先,您不需要在函数g中再次声明 cmultiple(这是一个错误)。其次,您根本没有调用该函数,只是实现了它。和其他人一样,您需要==代替=

public static void main(String[] args) {
    Scanner input = new Scanner (System.in);
    int a,b;
    System.out.println("enter the first number");
    a=input.nextInt(); 

    System.out.println("enter the first number");
    b=input.nextInt();

    boolean result = multiple(a,b);
    System.out.println(result);
}

public static boolean multiple (int g,int c){
    if (g%c==0){
        return true;
    }
    else
    {
        return false;
    }
}

请注意,您可以使用只有一行multiple的较短版本return g%c==0;

答案 3 :(得分:0)

除了= issue之外,你还要声明变量两次。试试这个:

public static boolean multiple(int g, int c) {
    return g % c == 0;
}