下面的代码报错了,为啥? public class Main { public static void main(String[] args)

下面的代码报错了,为啥?
public class Main
{
public static void main(String[] args)
{
int a = 2000;
int b = 1000;
int min;
if (a < b)
{
int b = min; // TODO: assign min
}
else
{
int a = min; // TODO: assign min
}
System.out.println("The minimum of a and b is: " + min);
}
}

这算法应该是想比较a b大小,然后输出最小的那个吧。

你代码有两问题,若你是用Eclipse等开发工具的话,会有报错信息提示的

(  PS:推荐开发工具Intellij  https://www.jetbrains.com/idea/  )

问题一:

int a = 2000;
int b = 1000;

上面已经初始化了 a,b  所以下面重复初始化了,报错

int b = min;
int a = min;

须改为

b = min;
a = min;

问题二:

if (a < b) {
    a = min;    //这里应该是min = a; 即 最小值=a
} else {
    b = min;    // 这里应该是min = b; 即 最小值=b


正确的参考代码:

public class Main {
    public static void main(String[] args) {
        int a = 2000;
        int b = 1000;
        int min;
        if (a < b) {
            min = a;    // TODO: assign min
        } else {
            min = b;    // TODO: assign min
        }
        System.out.println("The minimum of a and b is: " + min);
    }
}

温馨提示:答案为网友推荐,仅供参考
相似回答