Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 爪哇:25:;。类别';合并阵列时出现预期错误_Java_Arrays - Fatal编程技术网

Java 爪哇:25:;。类别';合并阵列时出现预期错误

Java 爪哇:25:;。类别';合并阵列时出现预期错误,java,arrays,Java,Arrays,这是我的代码,它要求我调用一个类,我对此感到困惑。Noob到java,因此任何帮助都将不胜感激。第25行是发生错误的地方。 该程序正在将两个数组合并到一个新数组中 public class Merge{ public static void main(String[] args){ int[] a = {1, 1, 4, 5, 7}; int[] b = {2, 4, 6, 8}; int[] mergedArray = merge(a

这是我的代码,它要求我调用一个类,我对此感到困惑。Noob到java,因此任何帮助都将不胜感激。第25行是发生错误的地方。 该程序正在将两个数组合并到一个新数组中

public class Merge{

   public static void main(String[] args){

        int[] a = {1, 1, 4, 5, 7};
        int[] b = {2, 4, 6, 8};

        int[] mergedArray = merge(a, b);

        for(int i = 0; i < mergedArray.length; i++){
            System.out.print(mergedArray[i] + " ");
        }

    }

    public static int[] merge(int[] a, int[] b){

        // WRITE CODE  HERE
        int[] mergedArray = new int[a.length[] + b.length[]];
        int i = 0, j = 0, k = 0;

        while (i < a.length() && j < b.length()) //error occurs at this line
        {
            if (a[i] < b[j])

             {

                 mergedArray[k] = a[i];
                 i++;

             }

             else

             {

                 mergedArray[k] = b[j];
                 j++;

             }

             k++;

         }

         while (i < a.length())

         {

             mergedArray[k] = a[i];
             i++;
             k++;

         }

         while (j < b.length())

         {

             mergedArray[k] = b[j];
             j++;
             k++;

         }

         return mergedArray;

    }

}
公共类合并{
公共静态void main(字符串[]args){
int[]a={1,1,4,5,7};
int[]b={2,4,6,8};
int[]mergedArray=merge(a,b);
for(int i=0;i

此程序正在将两个数组合并为一个新数组。

获取不带括号的数组的长度

public class Merge{

   public static void main(String[] args){

        int[] a = {1, 1, 4, 5, 7};
        int[] b = {2, 4, 6, 8};

        int[] mergedArray = merge(a, b);

        for(int i = 0; i < mergedArray.length; i++){
            System.out.print(mergedArray[i] + " ");
        }

    }

    public static int[] merge(int[] a, int[] b){

        // WRITE CODE  HERE
        int[] mergedArray = new int[a.length[] + b.length[]];
        int i = 0, j = 0, k = 0;

        while (i < a.length() && j < b.length()) //error occurs at this line
        {
            if (a[i] < b[j])

             {

                 mergedArray[k] = a[i];
                 i++;

             }

             else

             {

                 mergedArray[k] = b[j];
                 j++;

             }

             k++;

         }

         while (i < a.length())

         {

             mergedArray[k] = a[i];
             i++;
             k++;

         }

         while (j < b.length())

         {

             mergedArray[k] = b[j];
             j++;
             k++;

         }

         return mergedArray;

    }

}
a.length

我运行了你的代码,它实际上正在运行。您只需将所有长度调用更改为just length(即remove length()和length[])

除此之外,代码是功能性的。运行时,您将获得以下输出:

1 1 2 4 4 5 6 7 8 

int[]mergedArray=newint[a.length[]+b.length[]应该是
int[]mergedArray=newint[a.length()+b.length()]此代码中使用了三种不同的方法来获取数组的长度,其中两种是错误的。