在Java中计算给定字母在句子中的出现次数 String-sensume=JOptionPane.showInputDialog(null,“编写一个句子”); String letter=JOptionPane.showInputDialog(null,“写一封信”); while(true){ 如果(字母等于(“停止”)) 系统出口(0); //计算特定字符数的步骤 否则{ int countLetter=0; int L=字母长度(); 对于(int i=0;i

在Java中计算给定字母在句子中的出现次数 String-sensume=JOptionPane.showInputDialog(null,“编写一个句子”); String letter=JOptionPane.showInputDialog(null,“写一封信”); while(true){ 如果(字母等于(“停止”)) 系统出口(0); //计算特定字符数的步骤 否则{ int countLetter=0; int L=字母长度(); 对于(int i=0;i,java,Java,是否可以替换点以使程序计算给定字母在第一个字符串中写入的句子中出现的次数?如果您的字符串字母包含一个字符,请使用此字母.charAt(0),然后用此字符替换点。还记得在这里使用==而不是==表示您只是在启动,并且=用于比较两个值。自Java8以来,有一个优雅的解决方案 String sentence = JOptionPane.showInputDialog (null, "Write a sentence."); String letter = JOptionPane.showInpu

是否可以替换点以使程序计算给定字母在第一个字符串中写入的句子中出现的次数?

如果您的
字符串
字母包含一个字符,请使用此
字母.charAt(0)
,然后用此字符替换点。还记得在这里使用
==
而不是
=
=
表示您只是在启动,并且
=
用于比较两个值。

自Java8以来,有一个优雅的解决方案

String sentence = JOptionPane.showInputDialog (null, "Write a sentence.");    
String letter = JOptionPane.showInputDialog(null, "Write a letter");

while (true) {

    if (letter.equals("Stop"))
        System.exit(0);    
    //to calculate number of specific character
    else {
        int countLetter = 0;
        int L = letter.length();
        for (int i = 0; i < L; i++) {
            if ((letter.charAt(i) = .....))     
                countLetter++;
        }
    }
}

这将返回字母“e”的出现次数。

如果必须使用
for
循环,并且希望坚持旧式方式,请尝试以下操作:

int count = letter.chars().filter(ch -> ch == 'e').count();
String-sensume=“这是一个非常基本的句子,只是举个例子。”;
字符字母='a';
int-occurrenceOfChar=0;
for(int i=0;i<句子长度();i++){
if(句子字符(i)=字母){
发生CHAR++;
}
}
System.out.println(“字母“”+字母
+“发生”+炭黑的发生
+“句子中的时间”
+句子+“\”);
句子和字母只是示例,您必须阅读用户输入

您可以使用Lib更快地执行此操作,而无需迭代字符串

    String sentence = "This is a really basic sentence, just for example purpose.";
    char letter = 'a';

    int occurrenceOfChar = 0;

    for (int i = 0; i < sentence.length(); i++) {
        if (sentence.charAt(i) == letter) {
            occurrenceOfChar++;
        }
    }

    System.out.println("The letter '" + letter
            + "' occurs " + occurrenceOfChar
            + " times in the sentence \""
            + sentence + "\"");

将返回3

当然,但它是
=
,而不是
=
,您可能还需要循环查看
句子。换句话说,除了
欢迎来到堆栈溢出,Sandra,您缺少了一段代码。再检查一遍你的代码,我认为你在这里的想法有一些错误。您正在迭代
字母
中的字符,但是
字母
应该只包含一个字母,对吗?因此,对我来说,重复它似乎是一个错误。我认为您应该在代码中用
语句
替换它,然后检查
语句.charAt(I)=letter.charAt(0)
坦白地说,我建议不要为如此琐碎的东西添加外部库。您是对的,但我只是建议他们是否可以使用相同的库@Federico klez CullocaI不认为OP处于学习语言的阶段,使用库对他们的学习进度有害
CharMatcher.is('e').countIn("Write a letter");