原文: https://beginnersbook.com/2019/04/java-program-to-find-the-occurrence-of-a-character-in-a-string/

在本教程中,我们将编写一个 Java 程序来查找String中字符的出现。

编程以查找字符串中字符的出现

在这个程序中,我们发现String中每个字符的出现。为此,我们首先创建一个大小为 256(ASCII 上限)的数组,这里的想法是将出现次数存储在该字符的 ASCII 值中。例如,'A'的出现将存储在计数器[65]中,因为A的 ASCII 值是 65,类似地,其他字符的出现存储在它们的 ASCII 索引值中。

然后我们创建另一个数组array来保存给定String的字符,然后我们将它们与String中的字符进行比较,当找到匹配时,使用counter数组显示该特定字符的计数。

  1. class JavaExample {
  2. static void countEachChar(String str)
  3. {
  4. //ASCII values ranges upto 256
  5. int counter[] = new int[256];
  6. //String length
  7. int len = str.length();
  8. /* This array holds the occurrence of each char, For example
  9. * ASCII value of A is 65 so if A is found twice then
  10. * counter[65] would have the value 2, here 65 is the ASCII value
  11. * of A
  12. */
  13. for (int i = 0; i < len; i++)
  14. counter[str.charAt(i)]++;
  15. // We are creating another array with the size of String
  16. char array[] = new char[str.length()];
  17. for (int i = 0; i < len; i++) {
  18. array[i] = str.charAt(i);
  19. int flag = 0;
  20. for (int j = 0; j <= i; j++) {
  21. /* If a char is found in String then set the flag
  22. * so that we can print the occurrence
  23. */
  24. if (str.charAt(i) == array[j])
  25. flag++;
  26. }
  27. if (flag == 1)
  28. System.out.println("Occurrence of char " + str.charAt(i)
  29. + " in the String is:" + counter[str.charAt(i)]);
  30. }
  31. }
  32. public static void main(String[] args)
  33. {
  34. String str = "beginnersbook";
  35. countEachChar(str);
  36. }
  37. }

输出:

Java 程序:查找字符串中字符的出现 - 图1

相关的 Java 程序

  1. Java 程序:按字母顺序排序字符串
  2. Java 程序:检查元音和辅音
  3. Java 程序:查找字符串中的重复字符
  4. Java 程序:检查回文串