Lire et trier des chiffres dans un Tube

mimi_info Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
mimi_info Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour;
S'il vous plais je veux savoir comment puis je récupérer des chiffres dans un pipe , pour les trier !

Merci d'avance .
A voir également:

5 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Est-ce que tu pourrais préciser ta "question" ?
Quel rapport entre le titre et le message ?

Voir aussi : Conseils d'écriture
0
mimi_info Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Oui .. je m'excuse !!

j'ai écrit un petit code dans une classe (extends Thread) qui fait le calcul d'une série , autre thread fait le carré d'une suite des nombres, le 3ème Thread fait le classement des chiffres ( résultat des 2 thread précédents ) , pour faire connecter les 3 Thread j'ai utilisé la notion des tubes , PipeWriter(dans les 2 premiers ) et PipeReader (dans le 3ème );
j'ai réussi à afficher les chiffres , mais ma question est comment puis je les trier !

Merci à vous
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Si ton 3è Thread fait "le classement des chiffres", pourquoi ce classement ne ferait il pas le tri en même temps ?
0
mimi_info Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Oui justement je veux faire ça !
0
mimi_info Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Voila le code du Classeur
import java.io.*;
public class Classeur extends Thread{
 PipedReader  RFC ;
 
 public Classf(PipedReader RFC) {
       this.RFC = RFC;
       
    } 
 
 public void run() 
 {
 
  try
  {
                      for( int i = 0; i<20; ++i){
               System.out.println(RFC.read());
          
         }
   
   }catch (Exception e) {
   e.printStackTrace();
  }

}}
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Pourquoi faire une boucle sur 20 éléments ? Il faut lire le flux jusqu'à ce que celui-ci soit terminé (il va renvoyer -1 dans ce cas).
De plus, les int que renvoie la méthode read() sont censés être des caractères, pas de vrais entiers, tu auras des erreurs pour des entiers négatifs par exemple, ou pour de "grandes" valeurs.

Dans ton code je ne vois pas où tu fais de classement.. tu fais juste un affichage !
Si tu veux faire un tri il faudrait déjà stocker tes valeurs quelque part (un tableau, une collection, etc.) et c'est ça que tu va trier, soit à la fin, soit au fur et à mesure.
Voir : Arrays.sort, Collections.sort, TreeSet, etc.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mimi_info Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour votre réponse KX
Oui j'ai fait juste l'affichage du contenu du pipe par ce que j'arrive pas à stocker les valeur du pipe dans un tableau .
(la boucle sur 20 éléments est juste pour tester )
0