如何修复Java中的“无法解析为变量”错误

cod*_*149 0 java

我正在尝试实现一个非常简单的排序方法,该方法采用int数组并按升序对元素进行排序,但是我陷入了有关变量的错误

    public int[] sort1(int[] a){
        for (int i=0; i<a.length;i++)
            for(int j=i+1; j<a.length; j++)
                int min = a[i];
                if (a[j] < min) {
                    a[i] = a[j];
                    a[j] = min;
                    min = a[i];
                }
        return a;
    }
Run Code Online (Sandbox Code Playgroud)

我无法解析为变量j无法解析为变量min无法解析为变量

我不知道为什么会出现这些错误以及如何解决它们。

Era*_*ran 7

您缺少花括号:

public int[] sort1(int[] a){
    for (int i=0; i<a.length;i++) {
        for(int j=i+1; j<a.length; j++) {
            int min = a[i];
            if (a[j] < min) {
                a[i] = a[j];
                a[j] = min;
                min = a[i];
            }
        }
    }
    return a;
}
Run Code Online (Sandbox Code Playgroud)

内部循环有多个语句,因此必须用花括号将它们括起来。

尽管外部循环只有一个语句,但仍然建议也使用花括号将其括起来。