Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.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编写数组代码吗_Java - Fatal编程技术网

有人能帮我用java编写数组代码吗

有人能帮我用java编写数组代码吗,java,Java,我是Java新手;以下是我到目前为止的情况: int getLength(int length) { int[]a = new int[length]; for(int i = 0; i < a.length; i++) return(length); } intgetlength(intlength){ int[]a=新的int[长度]; for(int i=0;i

我是Java新手;以下是我到目前为止的情况:

   int getLength(int length) { 
       int[]a = new int[length];
       for(int i = 0; i < a.length; i++) 

       return(length);

   }
intgetlength(intlength){
int[]a=新的int[长度];
for(int i=0;i
上面写着“缺少返回语句”,但问题出在哪里?应该怎么写?
谢谢

这种方法在功能上是不必要的。不要将数组传递给函数并让该函数返回长度,只要在需要的地方获取长度即可

a.length

根据您提供的信息,我认为代码应该如下所示:

int getLength(int[] a){
     int length = a.length;
     return length;

}
只需执行arrayname.length即可获得数组的长度


由于问题指定该方法采用整数数组,因此在该方法参数中,您应该传入一个数组作为输入,在本例中是int[]a,而不是int length

我想你要做的是:

int getLength(int[] arr)
{
   int length = 0;
   for(int i = 0; i < arr.length; i++)
     length++;
   return length;
}
获取整数数组的getLength()

这是错误的,该方法的签名表明getLength()将整数(而不是整数数组)作为参数

因此,代码的其余部分有点混乱。 基本上,您实际正在做的是:

  • 声明类型为“整数数组”的变量,并初始化为新的长度数组
    length
  • 然后迭代整个数组(如果长度不是零),但在第一次迭代时返回其长度(从而退出代码段)
编译器说没有return语句,因为如果
for
循环条件不为true,并且数组的长度为零,则不会执行
return
指令。如果方法的
返回类型
不是
void

我刚刚试着解释一下你用这些代码片段到底在做什么。
我不明白那种方法的真正目的是什么。也许用户2635032的答案应该适合您。

代码的其余部分在哪里?为什么您甚至需要一个循环。。只需返回a.lengthan并修复
getLength()
函数以获取一个int数组(如
public int getLength(int[]a)
还有一件事需要考虑:并非总是发生
i
true
,这将导致
return
语句生效。这就是
缺少return语句的原因。
a.length=0
不会导致
For
循环执行。
int getLength(int[] arr)
{
   int length = 0;
   for(int i = 0; i < arr.length; i++)
     length++;
   return length;
}
int getLength(int[] arr){ return arr.length; }