java中switch语句中的defaul条件的位置

在java中switch语句中,每个case分支就是一个入口,如果都没有满足条件,那么将会走到default分支中。那么这个default分支的位置会不会影响到执行的流程呢?

package com.app.statement;

import java.util.Scanner;

/**
 * Created by charles on 2015/7/12.
 */
public class SwitchTest {

    public static void main(String[] args){
        System.out.print("enter a digital number:");
        Scanner scanner = new Scanner(System.in);
        int number = scanner.nextInt();
        switch(number){
            default:
                System.out.println("default");
                break;
            case 1:
                System.out.println("1");
                break;
            case 2:
                System.out.println("2");

            case 3:
                System.out.println("3");

            case 4:
                System.out.println("4");

        }

    }
}

测试条件:5

执行结果:default

说明如果case语句都没有匹配到的情况下,defualt的语句的位置不会影响流程。

测试条件:2

执行结果:2 3 4

说明从case语句入口进入之后,语句的流程就会顺序向下执行,不会执行到default语句。所以default语句应该放到最后书写,不然有可能不会执行到。 测试jdk: 1.7

时间: 2024-08-01 20:02:33

java中switch语句中的defaul条件的位置的相关文章

C++中switch 语句中的变量声明和

switch 内部的变量定义: 1 int i = 1; 2 switch(i) 3 { 4 case 0: 5 string str; //error 6 int val1 = 0; //error 7 int val2; //right 8 int val3; val3 = 0; //right 9 case 1: 10 val2 = 9; 11 cout << val2 << endl; 12 } <C++ Primer> P163: 如果在某处一个带有初始值的变

java7 语法糖 之 switch 语句中的string

Jdk7新增的switch 语句中常量可以string类型, 例如: @Test public void test_1(){ String string = "hello"; switch (string) { case "hello": System.out.println(string); break; default: throw new IllegalArgumentException("非法参数"); } } 语法糖的背后,其实用的对待

java7 switch语句中使用字符串的背后原理

先看下代码及反编译后的代码: /**  * @author doctor  *  * @time 2015年3月28日 下午3:26:06  */ public class StringForSwitch { @Rule public ExpectedException ex = ExpectedException.none(); @Test public void test_string_switch() { String result=""; switch ("docto

switch语句中break的巧用

大家都知道,break的作用就是终止它所在的switch语句后循环语句的执行.在这里呢,我们不去探讨break在循环里的终止作用,也不去回忆在循环里是跳出本层循环,不去研究它与continue或者return的区别.在这里,我们简简单单的谈一下,它在switch语句中的利用. 有这样一道编程题目:输入某年某月某日三个值,判断这是这一年的第几天.一般的情况,我们会这样写代码: #include<stdio.h> void main() { int year,month,day,num; prin

1.3.1 switch 语句中的 String

switch语句是一种高效的多路语句,可以省掉很多繁杂的嵌套if判断: 在Java 6及之前,case语句中的常量只能是byte.char.short和int(也可以是对应的封装类)或枚举常量,在Java 7规范中增加了String,毕竟它也是常量类型: Demo: public class CoinSwitchString { public static void main(String[] args) { printDay("Sunday"); printDay("Tue

swift switch语句中的标签语句

当我们在遍历中使用switch语句时有时需要终止整个遍历的进行而不是switch语句,那么标签语句的实现就是很有必要的 //可以使用标签来标记一个循环体或者switch代码块,当使用break或者continue时带上这个标签,可以控制该标签代表对象的终端或者执行,适合复杂真的控制流程 /* 要求在遇到异常数据时直接终止循环 */ var score = [96,83,43,101,66,70,-5,99] First:for s in score {//定义标签First switch s/1

Java7中Switch语句支持String

Java7新特性Swith语句中支持String 实例: public class StringSwitch { public static void main(String[] args) { System.out.println(getExpendedMessage("one")); System.out.println(getExpendedMessage("three")); System.out.println(getExpendedMessage(&qu

JAVA之Switch语句

switch case语句是用来判断case后面的表达式是否与switch的表达式一致,符合的话就执行case语句,不符合则break跳出.而default是当没有符合case的条件下执行的(它不用break跳出的),defaul相当于”第三种情况“,在switch case语句中也可以不使用. public class SwitchDemo { public static void main(String[] args) { // TODO Auto-generated method stub

从零开始学大数据-Java基础-switch语句(6)

我们从零开始学习大数据技术,从java基础,到Linux技术涉猎,再深入到大数据技术的Hadoop.Spark.Storm技术,最后到大数据企业平台的搭建,层层递进,由点到面!希望技术大牛能过来指导学习. 上一节学习了流程控制语句,本节学习switch语句. 开始之前,我们先看一下上节的练习题. 一.练习题 if语句格式的练习: 1.获取两个数据中较大的值 2.判断一个数据是奇数还是偶数,并输出 程序执行结果如下: 二.switch语句 流程控制语句的选择结构 1 选择结构(也被称为分支结构)