黑马程序员技术交流社区
标题:
return 小问题一枚
[打印本页]
作者:
Linsanity
时间:
2012-6-17 18:24
标题:
return 小问题一枚
package Test.return;
public class returnDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
returnDemo rd=new returnDemo();
//rd.print();
System.out.println(rd.print());
}
String print(){
System.out.println("fads");
return "nihaho";
}
}
result:
fads
nihaho
问:return String 还执行里面的System.out.println("fads") ?
作者:
张_涛
时间:
2012-6-17 18:28
System.out.println(rd.print());
1. 这里是不是调用了print()方法,因此有了fads的输出
2. System.out.println(rd.print());这条语句的意思是什么,讲print()方法的返回值打印出来,因此有了nihaho的输出
作者:
王杰
时间:
2012-6-17 18:56
对呀 执行了呀
作者:
朝哥
时间:
2012-6-17 19:18
楼主一定要要知道代码是怎么读的:
我来形象化描述:
我就是那java虚拟机,来读class的。我先找入口main函数
在里面我是按
从上到下
的顺序读的。
我碰到循环,我进去。循环里面也是按照
从上到下
的顺序读。碰到break,我就跳出该循环,碰到continue,我跨过去继续往下读。
碰到方法,我进方法里面,我在里面也按照从上到下的顺序读。
暂时你先这么理解。
作者:
朝哥
时间:
2012-6-17 19:19
所以你的代码中会执行里面的System.out.println("fads")
作者:
黑马_张佳超
时间:
2012-6-17 19:22
rd调用print()时,先执行的print()方法内的控制台输出语句,即打印的fads,然后执行return语句,方法执行返回"nihaho",最后将return返回的nihano通过控制台输出
作者:
孙飞
时间:
2012-6-17 19:42
今天刚看了第三天的函数,我感觉,函数中执行语句中的输出语句是会执行的,但如果函数的返回值类型不是void的话就必须有return返回语句,会返回一个值,那么程序员的目的就是要的返回值,在函数中直接输出,完全没有必要,再说了,输出是主函数的事
作者:
余银桂
时间:
2012-6-17 19:43
String print(){
System.out.println("fads");
return "nihaho";
程序从上往下执行,先要执行输出打印,所有结果中有 fads ,之后再返回String值。
作者:
黑马黄宏强
时间:
2012-6-17 21:02
之所以执行结果会有fasd和nihao是因为你调用了print()方法里面有在控制台输出fasd的操作,而nihao是这个方法的返回值。fasd是方法运行中的操作,而nihao才是这方法的最总返回值
作者:
申振华
时间:
2012-6-17 22:18
程序的执行结构 分:顺序结构 循环结构 和选择结构
你所写的方法执行的是顺序结构 所以方法体中先执行system.out.printn()然会返回return 语句的内容
作者:
胡大强
时间:
2012-6-18 00:00
//package Test.return;
public class returnDemo {
public static void main(String[] args) {
returnDemo rd=new returnDemo();
//rd.print();
System.out.println(rd.print()); //这里rd.print(),调用print方法。下面不是输出了fads么、、
}
String print(){
// System.out.println("fads"); //注释掉就没有fads输出了。。
return "nihaho";
}
}
//很多问题你多调试几遍。。就会慢慢地发现问题所在。
//另外,看了毕老师的视频的话,毕老师讲了一个注释代码找错法。。同理,你也可以注释代码来调试,然后再来发现问题~进而解决!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2