Se connecter avec
S'enregistrer | Connectez-vous

probleme de comprehension d'une source java !

Dernière réponse : dans Programmation

Bonjour, je n'arrive pas à comprendre la source suivante. Est-ce que quelqu'un ce sent la patience de m'expliquer clairement de quoi il en retourne.
C'est tres important !
merci .

import java.io.*;

class Saisie
{
private String Reponse;
private int[] carac;

public Saisie()
{
Reponse="";
carac=new int[10];
}

public Saisie(int LimiteTableau)
{
Reponse="";
carac=new int[LimiteTableau];
}

public String realiser()
{
int i=-1;
try
{
do
{
i++;
carac=System.in.read();

if (i==(carac.length-1)) carac=10;

}
while (carac!=10);
Reponse="";

int k=0;
while (carac[k]!=10)
{
if (carac[k]!=10 && carac[k]!=13) Reponse+=(char)carac[k];
k++;
}

return Reponse;
}
catch (IOException e)
{
return "Erreur entree/sortie";
}
catch (Exception e)
{
Lassé par la pub ? Créez un compte

  1. import java.io.*;
  2.  
  3. class Saisie
  4. {
  5. private String Reponse;
  6. private int[] carac;
  7.  
  8. /** constructeur par défaut (taille = 10)
  9. */
  10. public Saisie()
  11. {
  12. Reponse="";
  13. carac=new int[10];
  14. }
  15.  
  16. /** Constructeur avec une taille spécifiée
  17. */
  18. public Saisie(int LimiteTableau)
  19. {
  20. Reponse="";
  21. carac=new int[LimiteTableau];
  22. }
  23.  
  24. /**fonction de lecture au clavier
  25. */
  26. public String realiser()
  27. {
  28. int i=-1;
  29. try
  30. {
  31. do
  32. {
  33. i++;
  34. carac[i]=System.in.read(); //lit un caractère
  35.  
  36. if (i==(carac.length-1)) carac[i]=10; //si on arrive à la fin du tableau on met le caractère de code 10 qui correspond en fait à un retour à la ligne
  37.  
  38. }
  39. while (carac[i]!=10); // on lit tant que le dernier caractère est different de 10 donc tant que l'utilisateur a tappé sur autre chose que "entrée" ET qu'on est pas à la fin du tableau
  40.  
  41. //maintenant qu'on est sortis de la boucle de lecture, on construit la réponse
  42. Reponse="";
  43.  
  44. int k=0;
  45. while (carac[k]!=10)
  46. {
  47. if (carac[k]!=10 && carac[k]!=13) Reponse+=(char)carac[k]; // on concatène les caractères du tableau
  48. k++;
  49. }
  50.  
  51. return Reponse;
  52. }
  53. catch (IOException e)
  54. {
  55. return "Erreur entree/sortie";
  56. }
  57. catch (Exception e)
  58. {
Lassé par la pub ? Créez un compte
Tom's guide dans le monde