class HexRead{
String[] input = { "000A110D1D260219 ","78700F1318141E0C ","6A197D45B0FFFFFF "};

public static void main(String[] args){
HexRead hex = new HexRead();
for (int i = 0; i < hex.input.length; i++)
    hex.readLine(hex.input[i]);
}
void readLine(String code){
try{
for (int j=0;j+1<code.length();j+=2){
String sub=code.substring(j,j+2);
int num=Integer.parseInt(sub,16);
if(num == 255)
    return;
System.out.print(num + " ");
}
}finally{
System.out.println("**");
}
return;
}
}以上程序中try...finally块中的return到底有什么用啊?我知道return是返回的意思,但在try...finally块中return是否还有其它作用呢?请各位大哥讲解一下这个程序中两个return的作用?

解决方案 »

  1.   

    finally是指无论如何都要执行的语句,在try块中,即使满足return的条件(num == 255),finally块也会执行,就是说,当num==255时,先会打印出**,再return。
      

  2.   

    楼上说的很好
    ----------------------------------------------
    当num==255时,先会打印出“**”,再return。
    当num!=255时,先会打印出“xxx  **”,再return。
    “xxx”为num得值
      

  3.   

    我觉得,第一个return的作用有点类似于continue,如果num>255的话,跳回main方法,开始下一个循环,至于第二个return我觉得不要好像也可以。欢迎拍砖:)