黑马程序员技术交流社区
标题:
关于return的不解
[打印本页]
作者:
立志转行
时间:
2015-5-26 22:43
标题:
关于return的不解
class String3
{
public static void main(String[] args)
{
System.out.println(show());
}
public static int show()
{
for (int x = 0;x < 5 ;x++ )
{
if (x == 3)
return x;
}
return 5;
}
}
问题:
1、当x=3的时候,是不是就跳出循环,返回x,而且也不管x是不是局部变量都能return?
2、return5,是不是只是用来通过编译的?运行时不会读到它?
作者:
微凉的暮色
时间:
2015-5-26 23:02
1、当x=3的时候,是不是就跳出循环,返回x,而且也不管x是不是局部变量都能return?
答案是 对滴,你可以把 return 换成break,这样会更清楚。也就是程序遇到问题半路停止,或者说直接结束
2、return5,是不是只是用来通过编译的?运行时不会读到它?
编译通过,但属于无用的句子,只是满足语法要求,但如果不写会报错,编译不通过。:lol
话说基础视频里有介绍这个问题
作者:
Animal
时间:
2015-5-26 23:18
先为自己顶一下,占个沙发,嘿嘿。。。。
作者:
谢晓明
时间:
2015-5-26 23:20
1、当x=3的时候,是不是就跳出循环,返回x,而且也不管x是不是局部变量都能return?
不是跳出循环,return是跳出方法,break跟continue才是跳出循环,return是会将return后的东西返回到主函数。
2、return5,是不是只是用来通过编译的?运行时不会读到它?
return5是保证了编译通过,但是其实作用是当for循环中如果没有退出循环的情况就会执行到
作者:
立志转行
时间:
2015-5-27 00:36
谢晓明 发表于 2015-5-26 23:20
1、当x=3的时候,是不是就跳出循环,返回x,而且也不管x是不是局部变量都能return?
不是跳出循环,return ...
还是看视频看的不认真啊,受教了!
作者:
hihi
时间:
2015-5-27 00:55
return 5 是为了 方法中返回的类型是int类型的 能编译通过,不会返回给方法的。
语句执行到return X 就会被结束,返回x的值
作者:
mmakun
时间:
2015-5-27 08:39
当x为3时,直接跳出函数了
作者:
半世心修
时间:
2015-5-27 09:58
return 跳出它所属的代码块
作者:
立志转行
时间:
2015-5-27 10:48
谢谢各位!现在明白了!:victory:
作者:
bin2015
时间:
2015-5-27 11:00
for循环里面的return是用来返回值并结束for循环语句的
for循环外面的return是用来配合int类型的方法使用的,为了保证程序编译能通过
作者:
灯火通明
时间:
2015-5-27 12:35
return可结束方法
作者:
bingyu
时间:
2015-5-27 15:06
学习了:victory:
作者:
guojiadui
时间:
2015-5-27 15:37
如到return ,函数就完了
作者:
志行
时间:
2015-5-27 15:52
楼上都是正解~~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2