首页 > 解决方案 > 如何计算字符串中某个字母的出现次数

问题描述

只是有一个问题。我的班级有一个练习实验室作业,我试图从用户输入中获取字母“a”的出现次数。如果我输入:“apples apples apples”,输出将根据需要打印用户字符串,但最后不是给我数字 3,而是给 123...我想要输出:“apples apples apples3”而不是“apples苹果 apples123" 提前感谢您的帮助。

这是我的代码:

import java.util.Scanner;

public class labnextLine {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        
        String input;
        int count = 0;
            
        System.out.print("Enter a string:");
        input = in.nextLine();
        System.out.print(input);
        
        for (int i = 0; i < input.length(); i++) {
            if(input.charAt(i) == 'a') {
                count = count + 1;
                System.out.print(count);
            }   
        }    
    }    
}

标签: javastring

解决方案


为此,您只需要count在循环之外打印,这将提供您想要的输出。

如果使用 Java 8,您可能想尝试另一种方法:

long count = input.chars().filter(ch -> ch == 'a').count();
System.out.print(count);

推荐阅读