java每日一练(19_04_11)|条件语句——switch

名人名言

昨日翻译

“Those who dare to fail miserably can achieve greatly.” ——John F. Kennedy

敢于直面失败和苦难的人能够获得很大的成就

——约翰·费茨杰拉德·肯尼迪


今日名言

“I can’t give you a sure-fire formula for success, but I can give you a formula for failure: try to please everybody all the time.” ——Herbert Bayard Swope

2019.04.09问题及解析

题目

public class ExceptionTest {
   public static void main(String[] args) {
       int number = 0;
       System.out.println(returnTest(number));
  }


   private static int returnTest(int number){
       try{
           return number++;
      }catch (Exception ignored){


      }finally {
           return ++number;
      }
  }
}

请问结果输出什么?

A.0

B.1

C.2

D.编译错误

E.输出异常

答案与解析

1.相关知识

我们之前都练习都见到过try catch finally,也知道了无论是否捕获到异常都会执行finally语句,那么当try和finally同时return时,会是什么样的顺序呢。

当try中有return,存在finally时,会先执行return之后的语句但不返回,执行完finally中的语句再return,如果finally语句中也有return,会直接通过finally的return语句返回。

2.源码分析

定义了一个整型变量number赋初始值为0

returnTest方法传入参数number,将方法的返回值输出

returnTest方法try方法体中返回number++

catch中什么也不做

finally中返回 ++number。

3.答案解析

执行try时先将number变为1,之后finally中number变为2,最终返回2

因此输出2,答案选C。

2019.04.11问题

public class Value {
   public static void main(String[] args) {
       System.out.println(getValue(2));
  }


   private static int getValue(int i){
       int result = 0;
       switch (i) {
           case 1:
               result += i;
           case 2:
               result += i*2;
           case 3:
               result += i*3;
      }
       return result;
  }
}

请问结果输出什么?

A.0

B.2

C.4

D.10

E.输出异常

往期回顾

java每日一练(19_04_10)|异常—— try catch finally

java每日一练(19_04_09)|面向对象—— 继承、访问修饰符

java每日一练(19_04_08)|运算符、循环—— for、++自增

java每日一练(19_04_07)|基础数据类型、包装类—— double、float、int、Double

java每日一练(19_04_03)|HashMap、Hashtable

java每日一练(19_04_02)|instanceof关键字

java每日一练(19_04_01)

java每日一练(19_03_31)

java每日一练(19_03_30)

java每日一练(19_03_29)  (不定项选择题)

java每日一练(19_03_28)

java每日一练(19_03_27) (web服务器)

java每日一练(19_03_26) (程序的输出结果)

加入我们吧~

眼过千遍,不如手过一遍,一定一定要把自己的想法写出来(想法不论对错,写你所想就是进步),这样才会有所收获,你的每一个留言和分享小刀都会认真回复,彼此学习共同进步~

小刀和小伙伴在学习群里

等你来一起监督学习哦,坚持!加油!

进群请加小刀微信: best396975802

END


微信群请点击公众号菜单进微信群

文字|天堂

排版|花音

你点的每个在看,我都认真当成了喜欢


版权声明:本文为weixiaodedao原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。