Java(eclipse)扫描程序

时间:2017-02-24 16:32:31

标签: java eclipse

如果我输入1然后我的程序使用firstMethod,如果我输入2它使用secondMethod 问题是,如果我输入3,4或任何其他数字,它不只是简单地打印出输入输出错误,我怎么能设置范围或类似的东西,所以除1或2以外的任何东西打印出输入输出错误?

Scanner sc = new Scanner((System.in));
    if (sc.hasNextInt())
        m = sc.nextInt();
    else {
        System.out.println("input-output error");
        sc.close();
        return;         
    }

switch(m){ case 1: firstMethod(a); break; case 2: secondMethod(a); break; }

 default:
    System.out.println("input-output error");
    break;

3 个答案:

答案 0 :(得分:0)

Switch有一个“默认”案例:

switch(m){
    case 1:
        firstMethod(a);
        break;
    case 2:
        secondMethod(a);
        break;
    default:
         System.out.println("input-output error");
         break;
    }

答案 1 :(得分:0)

您应该在switch语句中使用default

switch(m){
    case 1:
        firstMethod(a);
        break;
    case 2:
        secondMethod(a);
        break;
    default:
         System.out.println("input-output error");
         break;
    }

default的想法是,如果未定义案例,它将运行default中的命令。

答案 2 :(得分:-2)

  Scanner sc = new Scanner((System.in));
  while (sc.hasNextInt()) {
  m = sc.nextInt();

  switch(m) {
    case 1:
      firstMethod(a);
      break;
    case 2:
      secondMethod(b);
      break;
    default:
      System.out.println("input-output error");
    }
  }
  sc.close();

通过此实现,如果m是一个等于除12(-1,0,400,950等)以外的任何整数的整数,它将转到默认值将打印出“输入输出错误”的情况。

注意:根据case等于的m访问每个case,因此根据您的预期m对每个devServer: { stats: 'minimal' }, 进行编码。