La función substring te devuelve un nuevo String a partir del índice que tu le indiques, por lo tanto "Hola".subString(1) devolvería "ola" si no me equivoco. Lo que puedes hacer es, sabiendo que hay una coma en la cadena por lo menos, hacer un bucle para iterar mientras la longitud de la cadena sea mayor que 0, vete comprobando que el charAt(0) sea igual a coma y en el caso de que lo sea devuelve el número de iteraciones que llevas, sino haz .subString(1) y sigue con la cadena resultante.
Este sería el algoritmo
Código:
if(cadena.charAt(0) == ',')
return contador;
else{
cadena = cadena.subString(1);
contador = contador + 1;
}
//Seguir con el bucle