Java程序查找给定字符串中字符的频率
对于给定的字符串,编写一个Java程序来查找特定字符的频率。在Java中,字符串是一种数据类型,包含一个或多个字符,并用双引号 (“ ”) 括起来。
查找字符串中字符的频率
要查找给定字符串中字符的频率,请按照以下方法操作:
- 使用for循环
- 使用Stream API
使用for循环
在这种方法中,使用for循环将给定字符串中的每个字符与要查找频率的字符进行比较。每次匹配时,递增计数。
示例
在此示例中,我们使用嵌套for循环查找给定字符串中字符的频率。
public class FrequencyOfACharacter { public static void main(String args[]){ String str = "Hi welcome to tutorialspoint"; System.out.println("Given string value:: " + str); char character = 't'; System.out.println("Finding frequency of character:: " + character); int count = 0; for (int i=0; i<str.length(); i++){ if(character == str.charAt(i)){ count++; } } System.out.println("Frequency of the given character:: "+count); } }
运行代码后,将显示以下结果:
Given string value:: Hi welcome to tutorialspoint Finding frequency of character:: t Frequency of the given character:: 4
使用Stream API
这是另一种查找给定字符串中字符频率的方法。在这里,我们使用Java流,它用于处理对象集合。在这种方法中,filter()方法将过滤出与给定字符匹配的字符。
示例
以下示例说明了如何使用Stream API查找给定字符串中字符的频率。
import java.util.stream.IntStream; public class FrequencyOfACharacter { public static void main(String[] args) { String str = "Hi welcome to tutorialspoint"; System.out.println("Given string value:: " + str); char character = 'i'; System.out.println("Finding frequency of character:: " + character); long count = IntStream.range(0, str.length()) .mapToObj(i -> str.charAt(i)) .filter(ch -> ch == character) .count(); System.out.println("The frequency of '" + character + "' is:: " + count); } }
运行此代码后,将生成以下输出:
Given string value:: Hi welcome to tutorialspoint Finding frequency of character:: i The frequency of 'i' is:: 3
广告