Partage
  • Partager sur Facebook
  • Partager sur Twitter

Manipulation char et string

    8 novembre 2008 à 3:22:21

    Salut tout le monde, je dois crypter un mot, voici la mise en situation:

    Vous ecrivez Allo le monde.

    1-J'inverse pour obtenir:
    ednom el ollA
    2-Je change tout les e pour des o et tout les o pour des e ce qui donne:
    odnem ol ellA

    J'ai réglé le numéro 1 d'inversion, je me demande comment faire pour le numero deux?
    • Partager sur Facebook
    • Partager sur Twitter
      8 novembre 2008 à 6:11:17

      String s1 = s2.replace('e', 'o');
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        8 novembre 2008 à 12:07:34

        Par contre je ne sais pas si c'est une bonne idée parce qu'au décryptage les 'o' d'origine vont sauter. (sauf si tu listes les modifications faites au préalable).
        • Partager sur Facebook
        • Partager sur Twitter
          8 novembre 2008 à 13:43:39

          Oui, évidemment si on veut changer les o en e puis les e en o, on va retrouver des o partout. IL faut obligatoirement une étape temporaire.
          Par exemple :
          String s1 = s2.replace('e', '\u0001').replace('o', 'e').replace('\u0001', 'o');
          • Partager sur Facebook
          • Partager sur Twitter
            8 novembre 2008 à 19:10:02

            Marche à merveille mais j'ai remarqué que cela ne compte pas les UPPERCASE donc je pourrais toujours utiliser to Lowercase mais le probleme c'est que le mot écrit est ré-afficher à l'utilisateur par la suite...

            Bon laisser faire pour ça je crois avoir une idée, quelle est la signification de \u0001
            • Partager sur Facebook
            • Partager sur Twitter
              8 novembre 2008 à 21:59:17

              Si tu veux le faire avec les majuscules, c'est pas compliqué : c'est exactement le même principe.

              \u0001 est le caractère ASCII 1, c'est un symbole non affichable. J'ai choisi celui-ci car il est très peu probable que l'utilisateur en ait un dans la chaîne de départ. J'aurais pu mettre n'importe quoi d'autre à part 'o' ou 'e'.
              • Partager sur Facebook
              • Partager sur Twitter
                9 novembre 2008 à 2:19:10

                Merci, mon prog fonctionne très bien.

                Bon, j'ai quelque question au sujet des String, j'ai visité le site de Sun Java mais les fonctions suivantes me troubles encore:

                -Que fait le .split(); aux string? D'après ce que j'ai vu il est utilisé avec un tableau de string mais c'est tout...
                -Que fait le .StringBuffer? Il est employé quand et pourquoi l'utilisé?(Je l'utilise avec .reverse pour inverser le String)


                Merci d'avance!
                • Partager sur Facebook
                • Partager sur Twitter
                  9 novembre 2008 à 4:17:51

                  Citation :

                  -Que fait le .split(); aux string? D'après ce que j'ai vu il est utilisé avec un tableau de string mais c'est tout...


                  As-tu regarder la doc' ? :) Il y a tout dedans. Sinon, qu'est-ce que tu ne comprends pas ?
                  Un exemple :
                  for(String s : "un;deux;trois".split(";"))
                      System.out.println(s);
                  

                  un
                  deux
                  trois
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Manipulation char et string

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown