French subtitles

← Nous avons intercepté un message secret - Introduction à la programmation en Java

11-41 Nous avons intercepté un message secret

Get Embed Code
6 Languages

Showing Revision 3 created 06/04/2018 by Michel Smits.

  1. Voyons d'abord comment nous allons
    utiliser la méthode decode.
  2. Il renverra une chaîne avec
    le message décodé
  3. et il n'a pas besoin d'arguments.
  4. Ainsi, dans DecoderTester,
  5. nous voulons imprimer le résultat
    de decoder.decode.
  6. Le décodeur a été fait avec la chaîne
    de messages codés déjà dedans.
  7. Nous ne devons pas
    retransmettre cette chaîne.
  8. Maintenant, revenons au décodeur lui-même.
  9. Nous devons écrire une boucle for
    qui lit chaque 10ième lettre
  10. en commençant par la 0ème.
  11. Comme nous lisons une chaîne,
    nous voulons aller tant
  12. que l'index est inférieur à
    la longueur de la chaîne.
  13. EncodedMessage est
    la chaîne que nous lisons.
  14. Au lieu d'incrémenter un
    à la fois je vais incrémenter i
  15. par 10 à chaque fois, de sorte que
    nous ne voyons qu'une lettre sur dix.
  16. A l'intérieur de la boucle,
    la partie que je veux répéter
  17. est la lecture de la lettre i
    et son ajout a decodedMessage.
  18. Ainsi, decodedMessage sera
    égal lui-même plus
  19. encodedMessage.substring de i à i + 1.
  20. Rappelez-vous, c'est ainsi que nous avons
    obtenu une lettre d'une chaîne plus longue.
  21. Voyons si cela fonctionne.
  22. On dirait qu'il y a plus
    de messages secrets ici.
  23. Si vous voulez les découvrir,
    Vous devrez
  24. essayer en commençant
    à différents indices.
  25. je vais parler un instant de bugs
    que vous auriez pu rencontrer.
  26. Si vous avez accidentellement
    écrit <= ici, comme ça.
  27. Vous pourriez rencontrer
    une exception de chaîne hors limites
  28. lorsque vous essayez d'accéder un index
    trop haut dans encodedMessage.
  29. Une exception d'index de chaîne
    hors limites est une erreur d'exécution.
  30. Cette erreur d'exécution est bien
    car elle arrête le programme et
  31. dit que vous avez essayé d'accéder
    à une valeur qui n'existe pas
  32. ce qui est mieux que de gâcher
    en silence le résultat de votre programme.
  33. Vous pourriez cependant écrire un peu
    maladroitement la condition en tant que
  34. i est inférieur ou égal à
    encodedMessage.length () - 1.
  35. Ça marcherait, mais je ne pense
    pas que ce soit aussi propre.
  36. Lorsque vous itérez sur une chaîne,
    il est préférable d'y aller,
  37. aussi longtemps que i
    est inférieure à la longueur.