黑马程序员技术交流社区
标题:
try中有return,是先执行return还是先执行finally的问题论证
[打印本页]
作者:
樊佰轩
时间:
2015-8-9 13:36
标题:
try中有return,是先执行return还是先执行finally的问题论证
//该问题是入学申请测试中的一道题,相信很多同学都遇到过。
//如果有更好的解法,希望同学发一下,互相学习。谢谢
import java.util.*;
public class TryFinallyDemo
{
//如果外部接收到true代表先执行return,后执行finally。
//如果外部接收到false代表先执行finally,后执行return。
public static boolean Demo_1( ) {
boolean flag = false;
try{
System.out.println("try::::"+flag);
return (flag = true);
}
finally{
System.out.println("finally:::::"+flag);
return false;
}
}
//外部接受ArryList结果,
//遍历集合打印时,如果只有try代表先执行return后执行try.
//如果有try和finally,代表先执行finally后执行retrun.
public static ArryList<String> demo_2( ){
ArryList<String> al = new ArrayList<String>( );
try{
al.add("try");
return al;
}
finally{
al.add("finally");
}
}
//需要测试的同学可以自己写一下主函数,就是接收返回值打印的操作。
public static void main(String[] args){};
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2