java - 调用数组并返回不同数组的方法会给出无法解析 B 到变量错误

标签 java arrays sorting compiler-errors

我正在调用一个数组并返回根据另一个数组排序的另一个数组。

我认为我的方法是正确的,但是当我尝试从主方法中的新数组中打印出来时,我收到一条错误消息, “无法将 B 解析为变量。”

B 是我的方法应返回的新数组的名称。
提前致谢。

package sort;

public class SortByFinal {

    public static int [][] sortByFinal(int n, int [][] A)
    {
        int [][]B = new int [n][3];

        int max = 0;

        for(int i =0; i<n; i++)
        {
            for(int j = i; j<n; j++)
            {
                max = Math.max(A[i][1], max);
            }

            for(int k = i; k<n; k++)
            {
                if(A[k][1] == max)
                {
                    B[k][0] = A[k][0];
                    B[k][1] = A[k][1];
                    B[k][2] = A[k][2];
                }
            }
        }

        return B;   

    }

    public static void main(String []args)
    {
        int num = 5;

        int[][] now = new int [num][3];

        now[0][0] = 2342;

        now[0][1] = 88;

        now[0][2] = 98;

        now[1][0] = 3901;

        now[1][1] = 75;

        now[1][2] = 71;

        now[2][0] = 1444;

        now[2][1] = 60;

        now[2][2] = 85;

        now[3][0] = 5327;

        now[3][1] = 95;

        now[3][2] = 80;

        now[4][0] = 4888;

        now[4][1] = 83;

        now[4][2] = 100;

        //int [][] B = new int[num][3];

        sortByFinal(num, now);

        for(int i = 0; i<num; i++)
        {
            for(int j = 0; j<3; j++)
            {
                System.out.print(B[i][j]);//this gives me the "B cannot be resolved to a variable."
                System.out.print(" ");
            }
            System.out.println();
        }



    }

}

最佳答案

BsortByFinal() 中定义,但不在 main() 中定义。要解决此问题,您可以将 main 更改为以下内容:

int[][] B = sortByFinal(num, now);

由于 sortByFinal(num, now) 返回一个 int[][],因此这将起作用。

在您的代码中,您正在调用该函数,但不对返回值执行任何操作,并且您无权访问其他方法的局部变量;因此,该消息。

关于java - 调用数组并返回不同数组的方法会给出无法解析 B 到变量错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20317173/

相关文章:

java - Java 有 IndexSet 和 Range 类吗?

java - Tomcat中的默认用户名和密码是什么?

java - Drools决策表: is list contains elements from other list

java - 为什么 RESTcontroller 在 JSON 中多次返回相同的结果?

python - 如何计算任意幂的矩阵,但假装数字的符号?

c++ - 什么时候使用动态数组而不是静态数组合适?

JavaScript 数组在奇数索引处拆分

sorting - ExtJs - 基于远程数据的分页和缓冲网格,无需远程分页和过滤

javascript - 如何在有序列表中插入 DOM 元素(在 Dojo 中)?

java - 在选择排序项目中,10 个元素的数组仅接受 5 个整数