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

当我输入一个以m字母结尾的单词时,我编写的静音程序不工作

冯卜鹰
2023-03-14

当用户输入包括“M”,“A”,“L”字母并排时,程序必须静音。但是当我输入一个以“M”字结尾的单词时,程序就不工作了。我留下了一些关于代码的照片。

import java.util.Scanner;

public class mute 
{
    public static void main(String[] args) 
    {
        Scanner scan = new Scanner(System.in);
        String enteredmessage;

        System.out.print("Enter the message:");
        enteredmessage = scan.nextLine();

        char[] array = enteredmessage.toCharArray();
        mutecommand(array);
        
        scan.close();
    }
    public static void mutecommand(char[] dizi) {
        for (int i = 0; i < dizi.length; i++) {
            if(dizi[i] == 'm' && dizi[i+1] == 'a' && dizi[i+2]=='l')
            {
                dizi[i]='*';
                dizi[i+1]='*';
                dizi[i+2]='*';
            }
        }

        for (char a : dizi) {
            System.out.print(a);
        }
    }
}

共有1个答案

逑俊楚
2023-03-14

这是因为这样一个事实,你在数组中迭代,如果你在最后一项,做一个i+2,所以它不在数组中

 类似资料:
  • 这似乎是件很简单的事情,但我在任何地方都找不到。我想要一个简单的程序(比如自动热键,但我找不到使用自动热键的方法),当我按下某个键时,它会冻结我的键盘和鼠标(无论我当时按什么键,即使我释放了实际的键/按钮),并将其冻结,直到我再次按下该键(选择的键从未被其他程序视为按下)。 我只是希望这样,如果游戏希望我按住一些按钮,我可以按下按钮,按下指定的键,松手,然后在我应该松开按钮的时候再次按下键。

  • 问题内容: 我需要删除单词的第一个字母并将其移到末尾,例如: 到目前为止,我已经尝试过了: 但是,我应该如何将第一个字母移到末尾? 问题答案: 您可以使用:

  • 将字符串中每个单词的首字母大写。 使用 ``String.replace()来匹配每个单词的第一个字符,并使用String.toUpperCase()` 来将其大写。 const capitalizeEveryWord = str => str.replace(/\b[a-z]/g, char => char.toUpperCase()); capitalizeEveryWord('hello

  • 这是我的代码,我做的方式对吗?我有点纠结于用什么来倒数辅音、元音和非字母表。

  • 输入要翻译的单词:Hello word in twist around:LohelLO 注:翻译的单词是这样形成的:直升机=OpterhelicCR后半部分的第一个字母大写:Opter前半部分的第一个字母小写:helic前半部分的最后一个字母大写:C后半部分的最后一个字母大写:R 这是我的密码。public static void main(string[]args){Scanner input=

  • 这是使用LUKE,我一直在LUKE中运行查询,看看发生了什么。http://www.getopt.org/luke/ 现在我想要做的是搜索一个术语ie Gloves*,它最终是(()()()) 我不明白为什么这会被翻译成这样,并在我的查询或索引中出现问题? null 需要注意的是,当我使用out和s IE glove或out通配符搜索一个术语时,一切都很好,只是两者的结合似乎破坏了查询。