使用 Java Stream API 统计字符串中给定字符的出现次数
简介
在本教程中,我们将实现一种方法,使用 Java 中的 Stream API 统计特定字符在一个字符串中出现的次数。字符串是字符的集合,我们将使用 String 类的方法来分离字符串字符。
我们将接收一个输入字符串,并定义要计数的字符。此方法中使用的函数是 String 类的 chars() 方法和 Stream 接口的 filter() 方法。
char() = 它是 String 类的一个实例方法。它返回 intstream 值。该流包含字符串中字符的代码点值。
filter() = 用于考虑预测值。它有助于选择所需的数值流。
Java 中的 Stream API 是在 Java 8 中引入的,它是一组类和对象。此方法简化了对象处理过程,并提高了代码的可读性。它通过其各种方法和管道流程,为 Java 程序员提供了处理复杂任务的灵活性。
示例 1
String = “tutorialspoint” Character = t
输出
字符“t”在输入字符串中出现 4 次。
在上面的示例中,输入字符串为“tutorialspoint”。任务是计算字符“t”在输入字符串中出现的次数。我们可以看到,“t”在字符串中出现了 4 次。
示例 2
String = “Helloworld” Character = “e”
输出
= 1
在上面的示例中,输入字符串为“Helloworld”,字符为“e”。任务是计算字符“e”在字符串中的重复次数。“e”在输入字符串中只出现 1 次。
chars().filter() − 它是 String 类库函数,返回参数字符串的字符值流。filter() 方法与它一起限制不需要的字符流。
string_name.chars().filter()
count() − 它计算流字符并返回它们的个数。调用 Java Stream 接口的 count() 方法后,将无法访问该流。
long count()
算法
获取输入字符串。
定义所需的字符并查找其在输入字符串中的出现次数。
使用 Stream API 的 filter() 方法去除不匹配的字符。
使用 String 类的 chars() 方法将字符串转换为字符。
打印输出。
逻辑示例 1
我们将使用 Java 实现上述示例,输入字符串为“tutorialspoint”,并计算字符“t”的出现次数。为了实现此示例,我们将使用一些列出的库函数:
import java.util.stream.*; public class GFG { // Method that returns the count of the given // character in the string public static long count(String st, char chr){ return st.chars().filter(ch -> ch == chr).count(); } // Driver method public static void main(String args[]){ String st = "tutorialspoint"; char ch = 't'; System.out.println("The occurrence of t in the string is:"); System.out.println(count(st, ch)); } }
输出
The occurrence of t in the string is: 3
逻辑示例 2
import java.util.stream.IntStream; public class CharacterCounter{ public static void main(String[] args) { String s = "Hello, World!"; char c = 'o'; long cnt = countOccurrences(s, c); System.out.println("Occurrences of '" + c + "': " + cnt); } public static long countOccurrences(String s, char c){ return s.chars().filter(ch -> ch == c).count(); } }
输出
Occurrence of ‘o’ : 2
结论
在本教程中,我们学习了 Java 中的流处理。我们编写了代码和两种逻辑来查找输入字符串中的特定字符。我们使用了 chars() 和 filter() 方法来实现示例,以查找给定字符串中特定字符的出现次数。
Stream 类的 filter() 方法过滤掉输入字符串中不需要的字符。String 类的 chars() 方法将输入字符串分割成字符。