java中return语句的位置。

class a
{
public static void main(String[] args)
{
int[]w={1,3,2,3,4};
int x=cha(w,2);
System.out.println(x);
}
public static int cha(int[] s,int k)
{
for (int x=0;x<s.length ;x++ )
{
if(s[x]==k)
{
return x;
}
else
return -1;
}

}
}

显示编译错误缺少返回语句
这是为什么

Java中的return语句总是和方法有密切关系,return语句总是用在方法中,有两个作用,一个是返回方法指定类型的值(这个值总是确定的),一个是结束方法的执行(仅仅一个return语句)。
return语句用在非void返回值类型的方法中,不但能返回基本类型,还可以返回(包括用户自定义类的)对象。
return可以写在方法的任意位置,但必须保证满足几个条件:

1:每个有返回值的方法中每条路径都有return

2 :return后不应有代码,因此此处代码不会被执行
3:在try-catch-finally结构中finally先于return执行

4:只有一种情况return不执行,即代码中包含System.exit(1);
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-10-14
如果传入的参数为null或者是数组的长度为0,那么你就缺少返回值了
第2个回答  2012-10-14
为了确保在不抛出异常的时候,能够正常Return. 无论循环能不能进去.都有可以中间打断掉.
比如自己Break掉.这样循环就跳出了.所以需要添加一个return进去.你上面写的方法可以用一个测试案例,就可以让你的方法return不了.
为了确保能正常运行.所以需要再任何情况下都会有Return
第3个回答  2012-10-14
public static int cha(int[] s,int k)
{
for (int x=0;x<s.length ;x++ )
{
if(s[x]==k)
{
return x;
}
else
return -1;
}

}

你这个方法要求返回一个 int 的数据,但是,你的入参: int[] s 数组 可能为空或者 length = 0,那么这个时候压根就不会进入 for 循环,此时,你的方法没有返回值,所以编译器会报错!!!
第4个回答  2012-10-14
class a
{
public static void main(String[] args)
{
int[]w={1,3,2,3,4};
int x=cha(w,2);
System.out.println(x);
}
public static int cha(int[] s,int k)
{
int retV=-1;
for (int x=0;x<s.length ;x++ )
{
if(s[x]==k)
{
retV=x;
break;
}
}
return retV;
}
}
一般不在循环内写return.如果循环一次都没有执行,则可能没有返回的可能性了

java中return语句的位置。
return语句用在非void返回值类型的方法中,不但能返回基本类型,还可以返回(包括用户自定义类的)对象。return可以写在方法的任意位置,但必须保证满足几个条件:1:每个有返回值的方法中每条路径都有return 2 :return后不应有代码,因此此处代码不会被执行 3:在try-catch-finally结构中finally先于retur...

请问一下java中关键字return的用法与作用?
一般放在函数末尾,表示函数调用的结束(return)和提交函数执行结果(比如说return 一个变量)

JAVA中return用法,谢谢了
如果你的for循环条件不满足,则不会执行,就不会有返回值

java中 if嵌套 return 写在哪里
if是在一个函数里的,return在这是函数返回值,return之后的代码就不会执行了,写在子程序里的return是满足if条件判断的返回值,外面的return是不满足条件时返回,外面的return没写会报错,在不同的分支都要有return关键字,除非你在第一个if(){}后面有return就可以不写 ...

java中return的用法
java中return的作用如下:根据《Java编程思想:第四版》4.5节中介绍:return语句作为一个无条件的分支,无需判断条件即可发生。return语句主要有两个用途:一方面用来表示一个方法返回的值(假定没有void返回值),另一方面是指它导致该方法退出,并返回那个值。根据方法的定义,每一个方法都有返回类型,该...

Java中return的用法
一、return语句总是用在方法中,有两个作用。一个是返回方法指定类型的值(这个值总是确定的)。一个是结束方法的执行(仅仅一个return语句)。二、实例1 。返回一个String。private String gets(){String s = "qw789" ; return s ;} 实例2 -- 结束程序 private void gets(String s ){ i...

java中return语句的位置
cha方法要求返回值为int类型 你原来的代码,只有在 s[0]=k的情况才会返回1 如果s[0]不等于k的情况 你并没有写return语句,就不知道该返回什么值了。

java中,应该怎么return
class Test(){ public static void main(String[] args){ \/\/那么下面语句是正确的:A a1 = returnB(); \/\/指向一个B对象 A a2 = returnC(); \/\/指向一个C对象 A a3 = returnBC("C"); \/\/指向一个C对象 } public B returnB(){ return new B();} public C returnC(){ retu...

java中类的一个方法中的返回值(return),为什么总是写在try\/catch的后面...
执行步骤是这样的:先执行try里面的语句,如果try里面有异常,则执行catch里面的语句,接着执行finally语句。。如果try语句里没异常,则直接执行finally里面语句。。。finally语句执行完了,接着执行外面的语句啊,肯定可以执行到外面的return语句。。。你是不是觉得,发生了异常程序就停止了?那是不正确的,...

java中,在for循环里加return;是什么意思?
renturn可以放在方法中,for循环是在 main 方法中的 ,他的意思就是立刻终止方法执行。如过i=5 那么这个方法立刻停止执行,所以无法输出值

相似回答