扫描仪无法识别用户输入的选项卡

时间:2019-03-18 01:47:10

标签: java java.util.scanner

对于一项作业,我正在尝试一种方法,该方法从用户读取名称并对其进行测试,以确保该名称不包含冒号,制表符或换行符。如果是这样,将输出一条消息,指出它不符合要求。

以下方法:

static String validRName(){
                Scanner sc = new Scanner(System.in);
                String rName = sc.next();
                if(rName.contains("\t") || rName.contains("\n")
                || rName.contains(":")){
                        System.out.println("Real name cannot contain tabs, newline, or colon characters.");
                        System.exit(0);
                }
                return rName;

  }

它成功地拾取了名称中的冒号,但是当其中包含制表符时它不起作用。如果其中有一个选项卡,则该选项卡之前的所有内容均被视为用户名,并且代码将继续显示,而不会显示错误消息。

我在做什么错了?

0 个答案:

没有答案