8
votes

Comment puis-je comparer une chaîne et un tableau de charret en Java?

Dans mon programme, j'essaie de comparer mon tableau de caractères astérixa [] à une chaîne mot dans une condition If comme: xxx

Mais ça me donne une erreur. Y a-t-il une autre façon que je puisse les comparer?


2 commentaires

Convertir le Char [] dans une chaîne , puis utilisez égale .


Faites une habitude de passer par les Javadocs. Cela vous aidera à traiter de telles choses.


4 Réponses :


17
votes

Vous devez convertir le tableau de caractères en chaîne ou en chaîne en graphique, puis faites la comparaison. XXX PRE>

ou P>

if(Arrays.equals(word.toCharArray(), asterixA))


1 commentaires

Merci encore assez nouveau à ce sujet



0
votes

faire comme suit: si (word.equals (nouvelle chaîne (astérixa))) {...}


0 commentaires

0
votes

Vous pouvez comparer les tableaux:

if (Arrays.equals(asterixA, word.toCharArray()) {}


0 commentaires

1
votes

Vous semblez prendre que "une chaîne est une gamme de caractères", ligne trop littérale. chaîne 's est égal à méthode stipule que

compare cette chaîne à l'objet spécifié. Le résultat est vrai si et uniquement si l'argument n'est pas NULL et est un objet de chaîne qui représente la même séquence de caractères que cet objet.

Tout dépend des circonstances, mais vous comparez généralement deux objets du même type ou deux objets appartenant à la même hiérarchie (partageant une superclasse commune).

Dans ce cas, un String n'est pas un Char [] , mais Java fournit des mécanismes d'aller de l'une à l'autre, soit en effectuant une chaîne - > Char [] Transformation avec String # TOCHARARRAY () ou A Char [] -> String Transformation en passant le Char [] En tant que paramètre sur String S. 'S.

De cette façon, vous pouvez comparer les deux objets après avoir activé votre chaîne dans un char [] ou vice-versa.


0 commentaires