I came up with this simple solution:
public class Main {
/**
* How to count occurrence of a given character in a String?
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
if (!in.hasNextLine()) {
System.out.println("You must enter a string!");
}
String givenString = in.nextLine();
char givenChar = in.next().charAt(0);
int occurance = occuranceOfChar(givenString, givenChar);
System.out.println(givenChar + " occured " + occurance + " times!");
}
private static int occuranceOfChar(String givenString, char givenChar) {
int sum = 0;
for (int i = 0; i < givenString.length(); i++) {
char charAtI = givenString.charAt(i);
if (charAtI == givenChar) sum++;
}
return sum;
}
}
Are there any bad practices here?