7.哥. 2022-01-26 08:34 采纳率: 50%
浏览 63
已结题

关于Java的一个小问题

代码
    Scanner qqq = new Scanner(System.in);

    System.out.println("开始猜丁克,请输入:");

      while (true) {                                //我觉得是这块应该在加个字符转换和判断如果是字符串直接输出重新输入,但是我实现不出来
        int a = qqq.nextInt();
        switch (a) {
            case 1:
                System.out.println("你出的是石头");
                break;
            case 2:
                System****.out.println("你出的是剪刀");
                break;
            case 3:
                System.out.println("你出的是布");
                break;
            default:
                System.out.println("输入格式不正确,请重新输入:");
                continue;
        }

        int i = new Random().nextInt(3);

        switch (i + 1) {
            case 1:
                System.out.println("随机石头");
                break;
            case 2:
                System.out.println("随机剪刀");
                break;
            case 3:
                System.out.println("随机布");
                break;
        }

        int c = a - (i + 1);
        switch (c) {
            case -1:
            case 2:
                System.out.println("恭喜");
                System.out.println("------------");
                return;
            case 0:
                System.out.println("平局");
                System.out.println("------------");
                break;
            case 1:
            case -2:
                System.out.println("失败");
                System.out.println("------------");
                break;
        }
    }
我想要达到的结果

现在我这个代码运行没有任何问题,但是目前只能输入int类型的数值,输入字符串类型的就报错(Exception in thread "main" java.util.InputMismatchException,)因为现在我输入1、2、3是正常运行的,输入4、5、6等等 其他的整数数值显示重新输入是我想要的结果,我想实现的是输入字符串同样达到重新输入的功能,刚学Java不久比较菜希望大佬指教

  • 写回答

4条回答 默认 最新

  • HoWorlds 2022-01-26 09:14
    关注

    int a = qqq.nextInt();
    这个改string类型的

    case 1 改 case "1"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 2月3日
  • 已采纳回答 1月26日
  • 创建了问题 1月26日

悬赏问题

  • ¥15 网络科学导论,网络控制
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)