-3
votes

Utilisation des données de caractères dans une instruction de commutation

J'essaie d'obtenir une déclaration de cas pour ajouter un entier à un réseau entier à l'aide de données de caractères tirées d'une chaîne.

int x = SString.length() - 1;
int[] values = new int[x + 1];
for (int i = 0; i <= x; i++) {
    System.out.println(keyword.charAt(i));
    switch (SString.charAt(i)) {
        case 'a':
            values[i] = 0;
        case 'b':
            values[i] = 1;
        case 'c':
            values[i] = 2;
            System.out.println(values[i]);
    }
}


1 commentaires

Les commutateurs nécessitent des déclarations break .


3 Réponses :


0
votes

Vous avez oublié break . XXX


1 commentaires

Je me sens comme un idiot absolu. Je regarde cela depuis 3 heures et je n'ai jamais rencontré mon esprit.



0
votes

Vous avez oublié la pause dans chaque déclaration de cas, tous les cas tombent-ils et finalement tous se retrouver avec les valeurs [i] = 2; xxx


0 commentaires

0
votes

Vous avez oublié la déclaration de pause et le système.OUT doit être en dehors de l'instruction de commutation.

    String SString = "abc";
    int x = SString.length() - 1;
    int[] values = new int[x + 1];
    for (int i = 0; i <= x; i++) {
        switch (SString.charAt(i)) {
            case 'a':
                values[i] = 0;
                break;
            case 'b':
                values[i] = 1;
                break;
            case 'c':
                values[i] = 2;
                break;
            default:
                break;
        }
        System.out.print(values[i] + " ");
    }


0 commentaires