Code sample:
public class CharacterCounter
{
public static int countOccurrences(String find, String string)
{
int count = 0;
int indexOf = 0;
while (indexOf > -1)
{
indexOf = string.indexOf(find, indexOf + 1);
if (indexOf > -1)
count++;
}
return count;
}
} |
public class CharacterCounter
{
public static int countOccurrences(String find, String string)
{
int count = 0;
int indexOf = 0;
while (indexOf > -1)
{
indexOf = string.indexOf(find, indexOf + 1);
if (indexOf > -1)
count++;
}
return count;
}
}
Method call:
int occurrences = CharacterCounter.countOccurrences("l", "Hello World.");
System.out.println(occurrences); // 3 |
int occurrences = CharacterCounter.countOccurrences("l", "Hello World.");
System.out.println(occurrences); // 3
You can also count the occurrences of characters in a string by using the Apache commons lang library with the following one-liner:
int count = StringUtils.countMatches("a.b.c.d", "."); |
int count = StringUtils.countMatches("a.b.c.d", ".");
If you are using the Sping Framework then you can do:
int occurance = StringUtils.countOccurrencesOf("a.b.c.d", "."); |
int occurance = StringUtils.countOccurrencesOf("a.b.c.d", ".");
If you want to be really smart (and don’t want to use a loop), then you can also use this one here:
int count = string.length() - string.replace(find, "").length(); |
int count = string.length() - string.replace(find, "").length();