现在的位置: 首页 > 综合 > 正文

传智播客第三课选择结构switch语句

2013年08月10日 ⁄ 综合 ⁄ 共 1554字 ⁄ 字号 评论关闭

Switch 用法:无论default放哪里,switch语句首先读的是第一个case语句;

关于break:理论上每个case的break是不可以省略 ;但靠近大括号的可以省略。

class  SwitchDemo
{
	public static void main(String[] args) 
	{
		/*
		switch(表达式)
		{
			case 取值1:
			     执行语句;
				 break;
		    case 取值2:
			     执行语句;
				 break;
		    ......
			default:
			     执行语句
				 break;
		}
		*/
		int x=3;
		switch (x)//byte,short,int,char(只有这四种能选择)
		{
		case 4:
			System.out.println("a");
		     break;
		case 1:
			System.out.println("b");
		     break;
	    case 3:
			 System.out.println("c");
		     break;
		default:
             System.out.println("d");
		     break;
		}
		
		int a=5,b=2;
		char opr='-';
		switch (opr)
		{
		case '+' :
			System.out.println(a+b);
		    break;
		case '-' :
			System.out.println(a-b);
		    break;
		case '*' :
			System.out.println(a*b);
		    break;
		case '/' :
			System.out.println(a/b);
		    break;
		default:
			System.out.println("无法运算");
		}
	}
}

练习:

class SwitchTest 
{
	public static void main(String[] args) 
	{
		/*
		用户输入的数据对应出星期
		*/
		int week=1;
		switch (week)
		{
		case 1 :
			System.out.println(week+"是星期一");
		    break;
		case 2 :
			System.out.println(week+"是星期二");
		    break;
		case 3 :
			System.out.println(week+"是星期三");
		    break;
		case 4 :
			System.out.println(week+"是星期四");
		    break;
		case 5 :
			System.out.println(week+"是星期五");
		    break;
		case 6 :
			System.out.println(week+"是星期六");
		    break;
		case 7 :
			System.out.println(week+"是星期日");
		    break;
		default:
			System.out.println(week+"没有对应的星期");
		    break;
		}


		int month=11;
		switch (month)
		{
		case 3:
		case 4:
		case 5:
			System.out.println(month+"对应的是春季");
		    break;
		case 6:
		case 7:
		case 8:
			System.out.println(month+"对应的是夏季");
		    break;
		case 9:
		case 10:
		case 11:
			System.out.println(month+"对应的是秋季");
		    break;
		case 1:
		case 2:
		case 12:
			System.out.println(month+"对应的是冬季");
		    break;
		default:
			System.out.println(month+"没有对应的季节");

		}
	}
}

switch 和if的区别:

If:

1:对具体的值进行判断;

2:对区间的判断;

3:对运算结果是boolean类型的表达式进行判断;

switch:

1、对具体值进行判断;

2、值的个数通常是固定的;

对于几个固定的值判断,建议使用switch语句,因为switch语句会将具体的答案加载进内内存。

       效率相对高一点。

抱歉!评论已关闭.