Java千百问_03基本语法(008)_switch如何使用

switch如何使用

switch允比对一个变量的值,来执行不同情况的代码。
switch语句和if else语句类似,switch能够实现的功能if else完全可以实现,区别在于使用switch逻辑更为清晰。if else详情看这里:if else如何使用
语法:

[java] view plain copy

 

  1. switch(expression){  
  2. case value :  
  3. //Statements  
  4. break; //optional  
  5. case value :  
  6. //Statements  
  7. break; //optional  
  8. //You can have any number of case statements.  
  9. default : //Optional  
  10. //Statements  
  11. }  

以下规则适用于switch语句:
1、在switch语句中使用的expression只能是一个字节,short,int和或char,enum本身为int,所以也可以使用(jdk1.7以后可以使用String)。
2、switch可以有任何数量的case语句。每个case后面是进行比较的值和":"。
3、case后面的值与expression类型必须相同,必须是一个常量。
4、当case后面的值与expression等于,则执行case对应的代码段,直到break语句为止。
5、直行到break语句,直接跳出switch,执行后续代码。
6、不是每一个case都要有break。如果没有break,则会继续执行下一个case对应的代码段,直到break为止。break关键字详解看这里:break与contine分别如何使用
7、switch语句可以有一个默认case,它必须出现在所有case之后。默认情况下,没有case是true时,执行default对应代码段。
例子:

[java] view plain copy

 

  1. public class Test {  
  2.   
  3. public static void main(String args[]){  
  4. //char grade = args[0].charAt(0);  
  5. char grade = 'B';  
  6.   
  7. switch(grade)  
  8. {  
  9. case 'A' :  
  10. System.out.println("Excellent!");  
  11. break;  
  12. case 'B' :  
  13. case 'C' :  
  14. System.out.println("Well done");  
  15. break;  
  16. case 'D' :  
  17. System.out.println("You passed");  
  18. case 'F' :  
  19. System.out.println("Better try again");  
  20. break;  
  21. default :  
  22. System.out.println("Invalid grade");  
  23. }  
  24. System.out.println("Your grade is " + grade);  
  25. }  
  26. }  

编译并运行上面使用各种命令行参数的程序。这将产生以下结果:

Well done

Your grade is a B

原文地址:http://blog.csdn.net/ooppookid/article/details/51042786

时间: 2024-11-02 10:39:09

Java千百问_03基本语法(008)_switch如何使用的相关文章

Java千百问_03基本语法(002)_java都有哪些关键字

java都有哪些关键字 首先我们来看看什么是关键字,关键字的含义. 1.java关键字是什么意思 关键字是电脑语言里事先定义的,有特别意义的特殊标识符,又叫保留字. Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等等,Java规定关键字不能用作自定义标识符(包括变量名.方法名.类名.包名和参数等等). 2.java都有哪些关键字 目前共有50个Java关键字,如下.其中,"const"和"goto"这两个关键字在Java

Java千百问_03基本语法(004)_java中的运算符都有哪些

java中的运算符都有哪些 Java提供了丰富的运算符来操纵变量.如果不知道什么是变量,看这里:局部变量.类变量.实例变量有什么区别 我们可以把所有的Java操作符为以下几组(除位运算和其它运算符之外,其他几种操作无几乎是java中使用频率最高的语法): 算术运算符.关系运算符.逻辑运算符.赋值运算符.位运算符.其它运算符 下面来仔细说明.运算符的优先级看这里:java运算符的优先级是怎样的 1.算术运算符 算术运算符用于在数学表达式中,他们是在代数中使用的方法相同.假设整型变量a=20,b=1

Java千百问_03基本语法(010)_break与contine分别如何使用

break与contine分别如何使用 break,contine都是使用在循环体中的语句,都有终止执行的作用,具体不同看下面详解.循环语句看这里: 1.break关键字是如何使用的: break是用来停止整个循环.必须在循环体中或switch语句中(switch语法看这里:switch如何使用).它将停止本层循环的执行(多层循环只会停止break这一层,跳出后继续父级循环),并开始执行后续的代码.语法 break语法是任何循环中一个单独的语句: [java] view plain copy  

Java千百问_03基本语法(007)_if else如何使用

if else如何使用 Java中if else语句,是用来做逻辑判断的语法(另一种逻辑判断语句switch看这里:switch如何使用).使用方式非常简单,可以用if做单独判断,可以用if...else if...else做多逻辑判断,还可以嵌套使用.可以说是java中使用最为广泛的语句.下面来说明这个语句具体如何使用. 1.if语句如何单独使用: 首先,if语句的语法为: [java] view plain copy   if(Boolean flag)   {   //如果flag为tru

Java千百问_03基本语法(009)_java中如何循环执行

java中如何循环执行 首先,我们看看循环是什么 1.循环是什么 当我们需要多次执行同样的代码段,通常被称为一个循环.伴随循环经常出现的关键字:break与contine分别如何使用 Java有非常灵活的三种循环机制:while 循环do...while 循环for 循环 2.什么是while循环 while循环可以按照特定的次数重复执行任务. 语法: [java] view plain copy   while(Boolean flag)   {   //代码段   }   在执行时,如果fl

Java千百问_03基本语法(005)_二进制是怎样做位运算的

二进制是怎样做位运算的 程序中的所有数在计算机内存中都是以二进制的形式储存的.位运算说白了,就是直接对整数在内存中的二进制位进行操作.其他运算符看这里:java种的运算符都有哪些 大部分运算流程都是先将整数转换为二进制,然后进行相应二进制操作.常见的操作有如下几种: 下面我们详细说明,运算符的优先级看这里:java运算符的优先级是怎样的 1.按位与 and 两个二进制数进行按位与操作:相同位的两个数字都为1,则为1:若有一个不为1,则为0. 例如:00101 & 11100 = 00100 通常

Java千百问_03基本语法(003)_public、privite、protected有什么区别

public.privite.protected有什么区别 首先,public.privite.protected都是Java的修饰符,我们先看看Java修饰符是什么 1.java修饰符是什么 Java修饰符是用来修饰Java中的标识符(包括变量名.方法名.类名.包名和参数名等等)的,用来改变它们的含义的关键词. Java语言有各种各样修饰符,大体分为两类:访问控制修饰符.非访问控制修饰符.如图: [java] view plain copy   public class className {

Java千百问_03基本语法(001)_局部变量、类变量、实例变量有什么区别

局部变量.类变量.实例变量有什么区别 在聊局部变量.类变量.实例变量有什么区别之前,我们需要了解一下Java变量. 1.Java变量是什么 在数学世界中,我们知道有常量.变量. 举一个例子,小红和小蓝每个人都有带了钱,小蓝带了5元,小红的钱比小蓝多10元.对于这样一个场景,我们一般会使用方程式表达: 设小红的钱为x,小蓝的钱为y,其中x,y都是数字,得出方程式: y=5; x=y+10; 我们看一下这个过程,首先假设了2个x.y两个变量,然后根据逻辑写出2个为x.y赋值的方程式,方程式中有5.1

Java千百问_05面向对象(008)_java中覆盖是什么

1.什么是覆盖 在Java中,覆盖是针对继承才有的概念,某一个子类需要某些方法或属性,但又不想使用父类中的同名的方法或属性,就需要使用覆盖.  直白的来说,就是在子类中编写与父类同名.同参数.同返回值的方法,或同名.同类型的属性,子类对象调用该方法/属性时,运行的是子类的方法,而不会执行父类的方法(除非在方法第一行写super();会先执行父类方法,再继续执行子类代码.) 了解类的构造函数看这里:类.对象到底有什么秘密  了解更多继承看这里:java类的继承有什么意义 2.构造函数如何覆盖 了解