Hola buenas

, necesito crear un programa en Java que dada esta entrada:
,12,34,56,78,34,23,45,567,3452,43246
Proporcione la siguiente salida:
~~ Posicion 1
numero: 1 cantidad: 1
numero: 2 cantidad: 1
numero: 3 cantidad: 3
numero: 4 cantidad: 2
numero: 5 cantidad: 2
numero: 7 cantidad: 1
~~ Posicion 2
numero: 2 cantidad: 1
numero: 3 cantidad: 2
numero: 4 cantidad: 3
numero: 5 cantidad: 1
numero: 6 cantidad: 2
numero: 8 cantidad: 1
~~ Posicion 3
numero: 2 cantidad: 1
numero: 5 cantidad: 1
numero: 7 cantidad: 1
~~ Posicion 4
numero: 2 cantidad: 1
numero: 4 cantidad: 1
~~ Posicion 5
numero: 6 cantidad: 1
Es decir, contabilice los números que hay en cada posición, no hace falta que la salida sea idéntica a esa mientras cumpla su función.
Yo había desarrollado por mi mismo este código que contabiliza solo el primer dígito.
package cadena;
import java.util.Scanner;
public class cadena {
public static void main(String[] args) {
int digitos1 = 0;
int digitos2 = 0;
int digitos3 = 0;
int digitos4 = 0;
int digitos5 = 0;
int digitos6 = 0;
int digitos7 = 0;
int digitos8 = 0;
int digitos9 = 0;
String cadena =",12,34,56,78,34,23,45,567,3452,43246"
for (int i = 0; i < cadena2.length(); i++) {
if (cadena2.charAt(i) == ',') {
i++; // Pasamos al siguiente carácter
char digito = cadena2.charAt(i);
switch (digito) {
case '1':
digitos1++;
break;
case '2':
digitos2++;
break;
case '3':
digitos3++;
break;
case '4':
digitos4++;
break;
case '5':
digitos5++;
break;
case '6':
digitos6++;
break;
case '7':
digitos7++;
break;
case '8':
digitos8++;
break;
case '9':
digitos9++;
break;
}
}
}
System.out.println("1-" + digitos1 + " 2-" + digitos2 + " 3-" + digitos3 + " 4-" + digitos4 + " 5-"
+ digitos5 + " 6-" + digitos6 + " 7-" + digitos7 + " 8-" + digitos8 + " 9-" + digitos9);
}
}
Además ya pregunté por otro foro y me dijeron esto por si sirve de ayuda. Muchas gracias de antemano.
"Te conviene usar split para separar los numeros que tienes
Te conviene tener una matriz bidimensional, count[][]
la primera dimension tan larga como el mas largo de los numeros, la segunda dimension de largo 10 (o al reves).
Con split tendras un arreglo de strings.
Recorres el arreglo, por cada iteracion estaras revisando 1 string. Te saltas los strings vacios.
Otro ciclo adentro para visitar cada uno de los caracteres de ese string.
El indice de ese ciclo sera el primer indices de la matriz. El segundo indice sera el numero que lees (el caracter) y le restas '0', incrementas ese valor especifico de la matriz.
Finalmente la matriz tendra los valores que buscas, en la posicion count
[j] tendras los numeros j que aparecieron en la posicion i (le sumas 1 para que se vea de 1 en adelante)."