当前位置: 首页 > 知识库问答 >
问题:

else语句根据字符串的空格数被激活

傅旺
2023-03-14
        String rezerverestoran= "";
        int rezerverestoranint=0;
        
        do {
            
            System.out.print("\nRestoran ismi: ");
            rezerverestoran= scanner.next();
            rezerverestoran= rezerverestoran.toLowerCase();
            rezerverestoran = rezerverestoran.replaceAll("\\s+", "");
            if (rezerverestoran.equals("maki")) {
                rezerverestoranint= 1;
                break;
            }
            else if (rezerverestoran.equals("thenorthshield")) {
                rezerverestoranint=2;
                break;
            }
            else if(rezerverestoran.equals("friends")) {
                rezerverestoranint=3;
                break;
            }
            else {
                print("Lütfen sadece ekrandaki restorant isimlerini gir.");
                continue;
            }
            
            
        } while (true);

基本上,当我设置rezerverestoran类似于“a”时,else语句会重复自身两次,或者如果我将其设置为“a”,它会重复自身三次,即使我使用rezerverestoran=rezerverestoran删除空格。replaceAll(“\s”和“);命令我该怎么办?

共有1个答案

郗福
2023-03-14

Scanner#Next()从扫描仪返回下一个标记(通常是一个单词)。要读取完整的输入行,请使用Scanner#nextLine()方法。

 类似资料:
  • 问题内容: 假设我有一个字符串 我想通过空格分隔符将其拆分为字符串数组。我还想保留值之间的单个空格,而忽略多个空格。 做这个的正则表达式是什么? 问题答案: 首先摆脱多个空格: 然后使用split方法将字符串拆分为数组

  • 问题内容: 我喜欢过滤掉字符串长度不等于10的数据。 如果我尝试过滤掉列A或B的字符串长度不等于10的任何行,则尝试这样做。 这工作缓慢,但正在工作。 但是,当A中的数据不是字符串而是数字(有时在read_csv读取输入文件时解释为数字)时,有时会产生错误。 我相信应该有更高效,更优雅的代码来代替。 根据下面的答案和评论,我找到的最简单的解决方案是: 要么 要么 问题答案: 应用于filex.cs

  • 问题内容: 我有一个包含英文和阿拉伯文书籍标题的MySQL数据库,并且我使用的是PHP类,该类可以自动将阿拉伯文本音译为拉丁文字。 我希望我的输出HTML看起来像这样: PHP是否可以根据其中使用的Unicode字符和字形来确定字符串的语言?我试图得到这样的东西: 幸运的是,该类在输入拉丁字符时不会阻塞,因此从理论上讲我可以通过转换发送每个结果,但这似乎浪费了处理时间。 谢谢! 编辑: 我仍然没有

  • 我得到的错误: ValueError:以10为基数的int()的文字无效:“2.2”

  • 如果我有3个字符串变量string1 string2和string3,并且根据用户输入,其中一些变量可能是空的,我该怎么做?我想将这些变量与我已经设置的另外3个变量进行比较,除非相应的字符串(string1/string2/string3)输入为空 这个想法是这样的: 如果没有一个是空的,那么: 如果s1是唯一一个空的,那么我们只比较其他2个: 因此,如果输入的字符串为空,程序将不会检查该变量是否

  • 问题内容: 如果长度超过10个字符,我想修剪字符串。 假设字符串长度为12(),则新的修剪后的字符串将包含。 我该如何实现? 问题答案: s = s.substring(0, Math.min(s.length(), 10)); 这样使用字符串可以避免在字符串已经短于的情况下出现异常。 笔记: 上面做了真正的修剪。如果您实际上想将截断的最后三个(!)字符替换为点,请使用Apache Commons