Inverser un String [Résolu]

Signaler
Messages postés
221
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
16 janvier 2009
-
Whismeril
Messages postés
14427
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
3 avril 2020
-
ReBonjour c'est encore moi mais cette fois-ci je n'ai pas trouvé de solution comparé au PasswordField.

J'ai un string de ce type :

A/B/C/D/E/F

et j'aimerais inverser ce String  à savoir écrire :

F/E/D/C/B/A

Pour cela il faut ecrire une fonction qui permet de renvoyer le nombre de "/"
Mais après je ne sais pas comment inverser ce qu'il y a entre les "/"

Merci d'avance pour votre aide.
A voir également:

7 réponses

Messages postés
694
Date d'inscription
lundi 5 décembre 2005
Statut
Membre
Dernière intervention
8 janvier 2014
10
ou :
        String initial = "A/B/C/D/E/F";      
        StringBuffer sb = (new StringBuffer(initial)).reverse();
        System.out.println("sb = " + sb);
Messages postés
221
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
16 janvier 2009

Salut DarkSidious, C'est avec texteFinal que tu inverse le String?
Messages postés
221
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
16 janvier 2009

Car je n'arrive pas à inverser :

public String GetCertificate(String word)
{
String[] texte = word.split(",");
String texteFinal = "";
for (int i = 0; i < texte.length; i++)
{
texteFinal += texte[i];
if (i != texte.length)
{
texteFinal += "/";
}
}
return texteFinal;
}
En appelant la fonction il ne m'inverse pas le mot que j'entre
Tu dois mettre i< texte.length/2
Whismeril
Messages postés
14427
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
3 avril 2020
366 > Ilyasseil
BONJOUR Ilyasseil , oui oui quand on débarque dans une discussion un peu de politesse est appréciée, à plus forte raison quand cette discussion est résolue depuis 11 ans.
Et donc la solution a été donnée par AlexN au message 6 (celui qui est annoté "meilleure réponse") en aout 2007....
Messages postés
221
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
16 janvier 2009

En reanalysant ton code tu remarques qu'on recupere A B C D E F
mais on ne les inverse pas
Messages postés
221
Date d'inscription
lundi 18 juin 2007
Statut
Membre
Dernière intervention
16 janvier 2009

Un grand merci a vous deux .C impeccable!!!
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
94
L'algorithme est très simple une fois que tu connais la fonction à utiliser : Split :

String[] texte = "A/B/C/D/E/F".split("/");
String texteFinal = "";
for (int i = 0; i < texte.length; i++) {
    texteFinal += texte[i];
    if (i != texte.length) {
       texteFinal += "/";
    }
}
Messages postés
694
Date d'inscription
lundi 5 décembre 2005
Statut
Membre
Dernière intervention
8 janvier 2014
10
        String[] texte = "A/B/C/D/E/F".split("/");
        String texteFinal = "";
        Collections.reverse(Arrays.asList(texte));
        for (int i = 0; i < texte.length; i++) {
            texteFinal += texte[i];
            if (i != texte.length) {
               texteFinal += "/";
            }
        }