黑马程序员技术交流社区
标题:
return的应用
[打印本页]
作者:
郑广昌
时间:
2012-12-22 14:39
标题:
return的应用
以为return一直应用在函数里,后来在循环中也见到了return语句
有一道题是让用break结束循环语句,然后用return尝试达到相同功能
我就定义了个函数,内有return,调用函数也实现了,但是总感觉用的不太好,想 求解,return的灵活用法
作者:
王进亮
时间:
2012-12-22 14:46
Java中的return语句总是和方法有密切关系,return语句总是用在方法中,有两个作用,一个是返回方法指定类型的值(这个值总是确定的),一个是结束方法的执行(仅仅一个return语句)。
以下是无返回值的情况:
?public void test1() {
System.out.println("---------无返回值类型的return语句测试--------");
for (int i = 1; ; i++) {
if (i == 4) return;
System.out.println("i = " + i);
}
}
当i=4时,循环结束..
return有一个特性就是一旦调用return 那么直接结束方法.
有如下例子:
?public int locate(){
while (true)
return 4;
}
以上代码是不会报错的,
?public int locate(){
while (isTrue())
return 4;
}
boolean isTrue(){
return true;
}
这段代码却会报错, 这是因为编译器认为while语句有在任何情况下都能执行的能力,但是只在入参为true的情况下有该能力。JVM不知道当istrue为假的时候该怎么办,所以报错.
在看如下代码:
?public int locate(){
while (isTrue())
return 4;
return 0;
}
boolean isTrue(){
return true;
}
这段代码也不会报错,因为添加了return 0;虽然说JVM不知道当istrue为假的时候该怎么办,但是仍然会返回0值,方法就有了返回值.
作者:
郑广昌
时间:
2012-12-22 14:51
谢了,受教!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2