comment comparer deux tableaux de chaîne sans java utils
Vérifier pour voir si le tableau arr1 contiennent les mêmes éléments que arr2 dans le même ordre en java.
par exemple:
isTheSame({"1", "2", "3"}, {"1", "2", "3"}) → true
isTheSame({"1", "2", "3"}, {"2", "1", "1"}) → false
isTheSame({"1", "2", "3"}, {"3", "1", "2"}) → false
pour l'instant j'ai
public boolean isTheSame(String[] arr1, String[] arr2)
{
if (arr1.length == arr2.length)
{
for (int i = 0; i < arr1.length; i++)
{
if (arr1[i] == arr2[i])
{
return true;
}
}
}
return false;
}
Le problème, c'est qu'il compare uniquement le premier élément des deux tableaux.
Est la parenthèse fermante sur
Pour commencer, la lecture de ceci sur la façon de comparer des chaînes de caractères en java, et de corriger votre erreur de compilation (vous avez oublié de fermer la parenthèse sur la deuxième si la condition).
if (arr1[i] == arr2[i]
t-il dans votre programme actuel?Pour commencer, la lecture de ceci sur la façon de comparer des chaînes de caractères en java, et de corriger votre erreur de compilation (vous avez oublié de fermer la parenthèse sur la deuxième si la condition).
OriginalL'auteur user1927368 | 2013-01-02
Vous devez vous connecter pour publier un commentaire.
Vous itération jusqu'à ce que vous trouver un match. En revanche, vous pouvez être à la recherche d'une Chaîne de caractères qui ne correspondent pas et vous devriez être en utilisant
equals
pas==
Pour info c'est Ce que les Tableaux.est égal à fait comme il gérer
null
valeurs.OriginalL'auteur Peter Lawrey
Mais il est très unoptimal.
OriginalL'auteur Kirill Lebedev
Oui, il suffira de comparer le premier élément. Regardez ce qu'il fait:
Tandis que l'utilisation de
==
n'est pas le problème avec l'exemple fourni des données en raison de la chaîne de stage, il sera vous mordre un jour de données réelles. N'utilisez pas de==
pour les objets à moins de identité de l'égalité est souhaitée.OriginalL'auteur