在Java中返回一个数组

时间:2015-11-30 14:57:20

标签: java arrays

我是Java的业余爱好者,我坚持使用Java返回和数组。 这是我的程序(缩短):

public class Mershor {

    public static int[] shotrting(int a[]) {
        //here I wrote an algorithm for shorting 
        return a;
    }

    public static void main(String[] args) {
        int[] a;
        a = new int[6];
        a[0] = 5;
        a[1] = 3;
        a[2] = 4;
        a[3] = 7;
        a[4] = 1;
        a[5] = 2;
        for (int o = 0; o <= a.length; o++) {
            System.out.println(shotrting(a[o]));    
        }
    }
}

错误:

  

shotrting(int[])类型中的方法Mershor不适用于参数(int)

2 个答案:

答案 0 :(得分:3)

您只传递整数,而不是数组到shotrting(int [])。

要传递整个数组,请键入数组的名称:shotrting(a)。

我也对你的主程序进行了一些小改动。

  public static void main(String[] args) {

    //shorter initialization
    int[] a = new int {5, 3, 4, 7, 1, 2};

    int[] result_array=shotrting[a];

    //To print the array in a more appropriate form.
    System.out.print(java.util.Arrays.toString(result_array);

}

答案 1 :(得分:1)

更改

System.out.println(shotrting(a[o]));    

System.out.println(shotrting(a)[o]);    

shotrtingarray作为参数,而不是Integer

  

a = [5,3,4,7,1,2]

     

a [o] = 5 .....

shotrting(a)返回一个数组。您可以使用[index]表示法访问其元素,例如shotrting(a)[0]shotrting(a)[1] ......