Aide pour un programme [Java] - Java - Programmation
Marsh Posté le 10-10-2013 à 00:24:33
J'ai dû oublier de dire que je suis débutant en Java parce que j'ai rien compris à ce que vous avez dit. xD
Enfin je vois l'idée mais je saurais absolument pas le faire, il me manque des connaissances. Mais c'est pas grave, pour l'instant je me contente de trier correctement ma Hashmap (par valeur), mon truc marche mais à l'affichage j'aimerais faire autrement. Dans mon code j'ai :
System.out.println (mapTriee) ;
Il m'affiche donc un truc du style : {PremierElement=1 ; DeuxièmeElement=2 ...}
Or, moi je veux :
PremierElement [1]
DeuxièmeElement [2]
...
Ça a l'air simple mais je vois pas comment faire.
Merci de votre aide en tout cas, j'étais déçu de voir aucune réponse jusqu'à maintenant. ^^
Marsh Posté le 10-10-2013 à 23:35:28
Ah ok, j'avais fait pareil mais au lieu du test j'avais mis mapTriee... zut. Bon bah merci beaucoup CdeLeader, il me reste plus qu'à gérer le copier/coller comme tu m'as dit, et pour ça je vais devoir me documenter encore un peu
Marsh Posté le 17-10-2013 à 00:16:35
Bonsoir, j'ai à nouveau besoin d'aide sur ce mini-projet. Quand on utilise la classe Scanner pour récupérer ce qu'on tape, en l'occurrence ici j'utilise nextLine(), lorsque je fais le retour à la ligne, ça "valide" ma chaîne de caractères et ça se termine en gros. Or, moi je veux copier/coller des choses où il y aura plusieurs sauts de ligne, donc comment faire en sorte que le programme ignore ces sauts de ligne, et qu'à la place je puisse "valider" ma grande chaîne par autre chose ?
Merci.
Marsh Posté le 17-10-2013 à 05:48:26
raphy55 a écrit : Bonsoir, j'ai à nouveau besoin d'aide sur ce mini-projet. Quand on utilise la classe Scanner pour récupérer ce qu'on tape, en l'occurrence ici j'utilise nextLine(), lorsque je fais le retour à la ligne, ça "valide" ma chaîne de caractères et ça se termine en gros. Or, moi je veux copier/coller des choses où il y aura plusieurs sauts de ligne, donc comment faire en sorte que le programme ignore ces sauts de ligne, et qu'à la place je puisse "valider" ma grande chaîne par autre chose ? Merci. |
Ca fait un bail que j'ai pas utilise Java, et Scanner j'y ai meme jamais touche, m'enfin bon j'ai l'impression que tu confonds plusieurs choses.
Visiblement d'apres un rapide coup d'oeil a la doc, Scanner te sert seulement a manipuler ton texte (i.e. y trouver certaines expressions, en extraire ce que tu veux).
La maniere dont tu l'alimentes (i.e. "ce qu'on tape" ) est quelque chose de different. Tu lui passes quoi exactement a ton Scanner quand tu l'instancies? C'est ce que tu lui passes qui va surtout determiner ce que tu peux "taper" ou pas.
D'autre part, si tu lui passes deja plusieurs lignes (par exemple, tu as une boite de texte dans laquelle tu arrives a taper plusieurs lignes, et tu passes la String associee a ton Scanner), nextLine() ne va rien "valider" ni rien "terminer": ca va juste te retourner la premiere ligne de ton texte, et placer le Scanner au debut de la seconde ligne. A toi de faire ce que tu veux avec la premiere ligne, puis de rappeler nextLine() pour avoir la seconde ligne, etc. jusqu'a ce que tu tapes une NoSuchElementException en appelant nextLine() qui signifie que tu est arrive a la fin du texte.
Poste ton bout de code qui montre comment tu initialises le Scanner, ce que tu fais avec, et ce que tu penses que c'est cense faire (ou ce que tu veux faire) et quelqu'un pourra surement t'aider plus precisement.
Edit: sinon je dois me faire vieux mais je comprends meme pas a quoi elle sert cette classe Scanner exactement. Je ne comprends pas ce qu'elle fait qui ne soit pas faisable avec des expressions regulieres. Bon OK c'est p'tetre un peu plus facile a utiliser que de faire sa propre popote, mais de la a en faire une classe dans l'API??
Marsh Posté le 17-10-2013 à 12:50:27
En lisant de plus près la classe Scanner, c'est vrai qu'elle correspond pas à mon problème. En fait je faisais :
Scanner sc = new Scanner (System.in) ;
System.out.println ("Nom à ajouter ?" ) ;
System.out.println () ;
String nom = sc.nextLine() ;
Mais bon je fais fausse route, je pense que je vais faire une interface graphique avec un JTextArea (et un bouton de validation du texte tapé), ça sera plus présentable et ça marchera normalement. Je sais pas encore le faire mais je vais me documenter. ^^
Marsh Posté le 17-10-2013 à 16:51:40
Bon, n'arrivant pas à le faire, je pose la question suivante :
Quel est le meilleur/plus simple moyen de récupérer une String de plusieurs lignes (avec des sauts de ligne) ?
Marsh Posté le 17-10-2013 à 18:19:54
raphy55 a écrit : Bon, n'arrivant pas à le faire, je pose la question suivante : Quel est le meilleur/plus simple moyen de récupérer une String de plusieurs lignes (avec des sauts de ligne) ? |
Ben j'aurais pense que le JTextArea par exemple ca irait justement tres bien. C'est ou que tu bloques?
Sinon en cherchant vite fait, tu peux regarder la reponse a ca: http://www.java-forums.org/awt-swi [...] g-box.html
Si tu as du mal a comprendre ce qu'il fait, le bout qui t'interesse c'est la classe dans la deuxieme moitie du code (MyJOptionPane), la classe Testing (premiere moitie du code) servant seulement a montrer comment l'appeler.
Edit: comme le dit le gars, visuellement c'est tres basique, mais tu peux facilement le modifier pour en faire un truc plus presentable.
Marsh Posté le 17-10-2013 à 18:27:26
En fait je me suis retrouvé à vouloir... enfin devoir même, faire un extends de 2 classes : la classe JPanel et ma classe principale. Or comme on le sait, on n'est pas en C++, donc l'héritage multiple est impossible en Java, sauf en passant par des interfaces mais j'avais pas envie. Donc j'ai décidé d'abandonner cette idée et là j'ai réussi avec une solution manuelle on va dire, où je transforme mon saut de ligne par un espace, comme ça j'ai une String énorme qui tient sur une ligne, mais au moins je peux bosser dessus.
On vient de commencer les interfaces graphiques en cours, c'est pour ça que j'ai abandonné, je suis pas encore au point pour me lancer là-dedans. ^^
Merci pour le lien en tout cas, ça pourra m'aider.
Marsh Posté le 18-11-2013 à 15:10:55
bonjour,
j'aimerais savoir s'il y a un fichier jar spécifique pour générer automatiquement les fichiers de configuration d'un projet j2ee dans netbeans à partir d'un code java...merci d'avance pour votre réponse
Marsh Posté le 06-10-2013 à 12:26:33
Bonjour. ^^
J'ai besoin d'aide pour la création d'un programme, à la base pas compliqué, mais sur lequel j'ai pourtant du mal. Voilà le but du programme :
>>>>> Mise à jour automatique d'un classement de personnes (par points) <<<<<
En gros, au lancement du programme, je copie/colle le classement actuel. Le programme me demande ensuite de copier/coller la liste de tous les votes. Les votes se présentent de cette façon : http://www.jeuxvideo.com/forums/1- [...] e-plus.htm
Donc je c/c la page, et la difficulté est de trier le blabla (incluant la date du post et le pseudo de celui qui post) des véritables votes. Et c'est là le gros problème, je vois pas comment arriver à faire en sorte que le programme différencie le pseudo du vote, puisqu'on vote justement pour le pseudo... Alors j'ai un soucis quand il repère la chaîne de caractères vous comprenez...
Je fais ça avec une HashMap, quand une personne n'apparaît pas dans la map, je fais map.put(personne, points), si elle y apparaît ça donne map.put(personne, points+1). En gros c'est comme ça que le classement se fait. Mais comme j'ai dit, le gros problème est dans le copié/collé, où le programme doit bien trier les données nécessaires.
Voilà, j'espère que vous me comprenez et que vous pourrez m'aider.