为了账号安全,请及时绑定邮箱和手机立即绑定

JAVA switch循环问题,求大神们指教

JAVA switch循环问题,求大神们指教

水月心影镜中花 2017-07-02 16:45:08
import java.util.Scanner;    public class Example3 {         public static void main(String[] args) {         // TODO Auto-generated method stub         Scanner intup = new Scanner(System.in);         System.out.println("请输入新员工姓名");         String a = intup.nextLine();         System.out.println("请输入新员工应聘的工作类型");         String b = intup.nextLine();             switch (b.hashCode()) {             case 22222:             case 33333:             case 44444:                 System.out.println("请带他去JAVA开发小组");                 break;             case 55555:             case 66666:             case 77777:                 System.out.println("请带他去C++开发小组");                 break;             case 88888:             case 99999:             case 00000:                 System.out.println("请带他去.NET开发小组");                 break;             default:                  System.out.println("输入错误,请从新输入!");         }     }}下面是运行结果:请输入新员工姓名张炎生请输入新员工应聘的工作类型22222输入错误,请从新输入!请大神们指点迷津!小子在此谢过了。
查看完整描述

3 回答

已采纳
?
蒲公英wsg

TA贡献242条经验 获得超126个赞

String b = intup.nextLine();


b是字符串,下面switch是int,能匹配成功吗?

有三种方法

1、将下面的case条件改成字符串

2、将b改成整形

3、switch (Integer.valueOf(b))


望采纳~~~~~~~~~~~~~~~~~~

查看完整回答
1 反对 回复 2017-07-02
?
Damon__huang

TA贡献6条经验 获得超0个赞

一个字符串的hashcode值等于自身(在可以转成int类型的情况下,转化成int)的概率非常小吧

查看完整回答
反对 回复 2017-07-03
  • Damon__huang
    Damon__huang
    还有,可以像一楼说的那样,转成int后,再去判断,但是也要考虑转换失败的情况
  • 3 回答
  • 1 关注
  • 1387 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信