java 选择结构二 上机练习_JAVA的选择结构(二)

1.switch选择结构:

语法:

switch (key) {

case value:

break;

case value:

break;

case value:

break;

default:

break;

}

根据key去匹配value的值,如果value的值跟key相同则走case块中的代码,然后执行完毕后结束,如果所有case块都不匹配则会走default

如果想让case块执行完毕后跳出选择结构则在case块结尾处添加break

案例:

韩嫣参加计算机编程大赛

如果获得第一名,将参加麻省理工大学组织的1个月夏令营

如果获得第二名,将奖励惠普笔记本电脑一部

如果获得第三名,将奖励移动硬盘一个

否则,不给任何奖励

public class Demo01 {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.println("请输入名次:");

char count = input.next().charAt(0);

/*

*

* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部

* 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励

*/

switch (count) {

case '一':

System.out.println("参加麻省理工大学组织的1个月夏令营 ");

break;

case '二':

System.out.println("奖励惠普笔记本电脑一部");

break;

case '三':

System.out.println("奖励移动硬盘一个");

break;

default:

System.out.println("没有奖励!");

break;

}

}

}

2.注意问题:

1.case后面的常量必须各不相同

2.如果需要每个case执行完后跳出,在每个case后不要忘记写break;

3.default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略

3.多重if选择结构和switch比对

相同点:

都是用来处理多分支条件的结构

不同点:

switch选择结构

只能处理等值条件判断的情况

多重if选择结构

没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况

4.总结选择结构:

if选择结构

基本if选择结构: 处理单一或组合条件的情况

if-else选择结构:处理简单的条件分支情况

多重if选择结构:处理复杂的条件分支情况

嵌套if选择结构:用于较为复杂的流程控制

switch选择结构

多重分支并且条件判断是等值判断的情况

5.使用hasNextInt()解决用户从控制台输入为非整型问题

public class Demo02 {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

System.out.println("欢迎光临我行我素管理系统");

System.out.println("\t\t1.登录系统");

System.out.println("\t\t2.退出");

System.out.println("请选择:");

if(input.hasNextInt())

{

int number=input.nextInt();

switch (number) {

case 1:

System.out.println("欢迎登录系统!!");

break;

case 2:

System.out.println("您退出了系统!!");

break;

default:

System.out.println("没有输入选项");

break;

}

}else{

System.out.println("请输入正确的数字:");

}

}

}

案例:1.韩嫣参加计算机编程大赛

如果获得第一名,将参加麻省理工大学组织的1个月夏令营

如果获得第二名,将奖励惠普笔记本电脑一部

如果获得第三名,将奖励移动硬盘一个

否则,不给任何奖励

public class Demo01 {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.println("请输入名次:");

char count = input.next().charAt(0);

/*

*

* 韩嫣参加计算机编程大赛 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 如果获得第二名,将奖励惠普笔记本电脑一部

* 如果获得第三名,将奖励移动硬盘一个 否则,不给任何奖励

*/

switch (count) {

case '一':

System.out.println("参加麻省理工大学组织的1个月夏令营 ");

break;

case '二':

System.out.println("奖励惠普笔记本电脑一部");

break;

case '三':

System.out.println("奖励移动硬盘一个");

break;

default:

System.out.println("没有奖励!");

break;

}

}

}

2.   public class Demo02 {

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

System.out.println("欢迎光临我行我素管理系统");

System.out.println("\t\t1.登录系统");

System.out.println("\t\t2.退出");

System.out.println("请选择:");

if(input.hasNextInt())

{

int number=input.nextInt();

switch (number) {

case 1:

System.out.println("欢迎登录系统!!");

break;

case 2:

System.out.println("您退出了系统!!");

break;

default:

System.out.println("没有输入选项");

break;

}

}else{

System.out.println("请输入正确的数字:");

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值