Liste un Tableau de Chaînes de caractères dans l'ordre alphabétique
J'ai un programme qui a les entrées de l'utilisateur une liste de noms. J'ai un interrupteur cas aller à une fonction à laquelle je voudrais avoir les noms imprimer dans l'ordre alphabétique.
public static void orderedGuests(String[] hotel)
{
//??
}
J'ai essayé les deux
Arrays.sort(hotel);
System.out.println(Arrays.toString(hotel));
et
java.util.Collections.sort(hotel);
Ce qui n'a pas de travail au sujet de ces solutions?
Poste le code complet. Avec la commande que vous êtes en train de faire tout.
Poste le code complet. Avec la commande que vous êtes en train de faire tout.
OriginalL'auteur Nick Mico | 2013-02-18
Vous devez vous connecter pour publier un commentaire.
Bizarre, ton code semble fonctionner pour moi:
J'ai couru ce code à l'aide de "java Test Bobby Joe Ange" et voici le résultat:
OriginalL'auteur Vineet Kosaraju
La première chose que vous avez essayé semble bien fonctionner. Voici un exemple de programme.
Appuyez sur le bouton "Démarrer" en haut de cette page de le lancer pour voir la sortie vous-même.
OriginalL'auteur zevdg
Vous pouvez simplement utiliser
Arrays#sort()
, il fonctionne parfaitement.Voir cet exemple :
OriginalL'auteur Azad
Voici le code qui fonctionne:
OriginalL'auteur Amit
java.util.Les Collections.de tri(listOfCountryNames, Collateur.getInstance());
OriginalL'auteur Shan Arshad
Par ordre alphabétique ordre je suppose que la commande soit : A|a < B|b < C|c...
L'espoir c'est ce que @Nick est(ou était) la recherche et la réponse suit l'hypothèse ci-dessus.
Je suggère d'avoir une classe implémente la méthode de comparaison de Comparateur-interface :
et de la méthode appelante invoque les Tableaux.méthode de tri personnalisé Comparateur :
Résultats observés:
Tableau d'entrée : "Vani","Kali", "A","I","kuldeep","Arun"
de sortie(dans l'ordre Alphabétique):
Arun, Kali, kuldeep, Mohan, Soni, Vani
De sortie(Naturel de la commande par l'exécution de Tableaux.de tri(inputArray) est :
Arun, Kali, Mohan, Soni, Vani, kuldeep
Ainsi, dans le cas de l'ordre naturel, [Vani < kuldeep] qui à ma compréhension du alphabétique ordre n'est pas la chose désirée.
pour plus de compréhension de naturel et alphabétique/ordre lexical visite la discussion ici
OriginalL'auteur Vinayak
CompareTo()
méthode: Les deux chaînes sont comparées en fonction du caractère Unicode valeurs.OriginalL'auteur Joshua Poddoku
OriginalL'auteur Hrishi D Developer
Tableaux.de tri(stringArray);
Il trie le tableau de chaîne basée sur les caractères Unicode valeurs. Toutes les chaînes qui contiennent des caractères majuscules au début de la chaîne sera en haut de la liste triée par ordre alphabétique, suivi par toutes les chaînes de caractères avec des caractères en minuscules.
Ainsi, si le tableau contient des chaînes de caractères commençant par deux caractères en majuscules et en minuscules, le tableau trié ne serait pas de retour a la casse ordre alphabétique liste
De sortie est : Alice, Carol, bob,
Si vous avez besoin de Chaînes pour être triés et sans distinction de cas, vous aurez besoin d'un second argument, un Comparateur, pour les Tableaux.sort(). Une telle comparaison a déjà été écrit pour nous et peut être consulté comme statique sur la classe String nommé CASE_INSENSITIVE_ORDER.
De sortie est : Alice, bob, Carol
OriginalL'auteur Fergal Fitz
Vous pouvez utiliser des Tableaux.méthode sort (). Voici l'exemple,
Sortie
[brooke, cameron, frédéric, pierre, taylor]
OriginalL'auteur Shiva
OriginalL'auteur MOSDEV