web-dev-qa-db-fra.com

Est-il possible d'obtenir uniquement le premier caractère d'une chaîne?

J'ai une boucle for en Java.

for (Legform ld : data)
{
    System.out.println(ld.getSymbol());
}

La sortie de la boucle ci-dessus est

Tampon

CaD

CaD

CaD

Maintenant, ma question est-il possible d'obtenir uniquement le premier caractère de la chaîne au lieu de Pad ou CaD

Par exemple, si c'est Pad, je n'ai besoin que de la première lettre, c'est-à-dire P
Par exemple, si c'est CaD, je n'ai besoin que de la première lettre, c'est-à-dire C

Est-ce possible?

21
Pawan

String a une méthode charAt qui renvoie le caractère à la position spécifiée. Comme les tableaux et Lists, String est indexé 0, c'est-à-dire que le premier caractère est à l'index 0 Et le dernier caractère est à l'index length() - 1.

Donc, en supposant que getSymbol() renvoie un String, pour imprimer le premier caractère, vous pouvez faire:

System.out.println(ld.getSymbol().charAt(0)); // char at index 0
34

Utilisez ld.charAt(0). Il renverra le premier char du String.

Avec ld.substring(0, 1), vous pouvez obtenir le premier caractère sous la forme String.

56
Sibbo

Ici, je prends Mobile No From EditText Cela peut commencer à partir de +91 ou 0 mais j'obtiens 10 chiffres réels. J'espère que ceci vous aidera.

              String mob=edit_mobile.getText().toString();
                    if (mob.length() >= 10) {
                        if (mob.contains("+91")) {
                            mob= mob.substring(3, 13);
                        }
                        if (mob.substring(0, 1).contains("0")) {
                            mob= mob.substring(1, 11);
                        }
                        if (mob.contains("+")) {
                            mob= mob.replace("+", "");
                        }
                        mob= mob.substring(0, 10);
                        Log.i("mob", mob);

                    }