|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : int ou float ?? [ Algorithme / Autre ] (amine1234Z)
Informations & options pour cette discussion
mercredi 21 mai 2008 à 00:42:25 |
int ou float ??

amine1234Z
|
Salut j'ai fait comme ca: int t1=0,i1=0,P1=0; ------------------------------------------------------------------------- i1 = Integer.parseInt(MonText.getText().trim());// rendre le contenu de "MonText" en entie. -------------------------------------------------------------------------- aprés l'initialisation j'affecte i1=2.2 et P1=300.02 et t1=i1*P1; MAIS l'errur ci dessus ce lance; ------------------------------------------------------ java.lang.NumberFormatException: For input string: "2,2" ... ....etc ------------------------------------------------------ peut etre il faut convertire le contenu de "MonText" en float et il une autre manier de passer vers float? et comment en ecrit la vergule dans les nombre réél est ce que avec le point (.) ou avec la vergule nomramel (,) ? MERCI% Mauvais Sens %
|
|
|
mercredi 21 mai 2008 à 06:56:53 |
Re : int ou float ??

DARKSIDIOUS
|
Réponse acceptée !
Salut, Forcément, "2,2" n'est ni un float, et encore moins un entier !
Convertit le d'abord en un nombre pouvant être convertit (remplace la virgule de notre format français, en un point du format américain, ce qui sera déjà plus simple à convertir !).
Ensuite, convertit ce "nouveau" nombre en Float, et récupère sa valeur entière :
i1 = Float.parseFloat(MonText.getText().trim().replace(",", ".")).intValue(); ______________________________________ DarK Sidious
|
|
|
mercredi 21 mai 2008 à 09:01:15 |
Re : int ou float ??

danimo
|
Réponse acceptée !
Salut, String MonText = "2.2"; Float f = new Float(MonText);// covertir le contenu de "MonText" en Float. System.out.println("MonText/f = " + MonText + "/" + f); float i1 = f.floatValue(); System.out.println("i1 = " + i1); float P1=300.02F; System.out.println("P1 = " + P1); float t1=i1*P1; System.out.println("t1 = " + t1); Cordialement, ...\ Dan /...
|
|
|
mercredi 21 mai 2008 à 13:43:31 |
Re : int ou float ??

amine1234Z
|
SAlut MERCI beacoup ca a marché Thanks a lot @+ % Mauvais Sens %
|
|
|
jeudi 22 mai 2008 à 18:54:03 |
Re : int ou float ??

verdy_p
|
Réponse acceptée !
Sans même faire appel à String.replace(...), il suffisait d'indiquer la "Locale" à utiliser pour la conversion (Locale.US ou Locale.FRANCE par exemple). Ceci dit, si c'est utilisateur qui a tapé la valeur, il a peut-être lui-même saisi une virgule ou un point, et String.replace(".", ",") permet de ne pas tenir compte de cette différence. Les fonctions parseXxx() ou les constructeurs comme Float(String) utilisent par défaut la locale du système local. Cette locale n'est pas nécessairement la locale anglophone (cela dépend des paramètres de démarrage de la VM Java ou de son environnement dans un navigateur ou une ligne de commande de l'espace utilisateur local), mais on peut préciser explicitement cette locale (ou encore le paramètre de codage de texte qui n'est pas nécessairement la page de code 1252 ou même ISO 8859-1, même sous Windows en version française! Cela dépend aussi de l'OS support et de paramères d'installation de la VM) La seule chose qui semble sure est que les locales US et française seront supportées, de même que les codages US-ASCI, ISO-8859-1, et Unicode UTF-8 ou UTF-16, ainsi qu'un codage spécifique à la plateforme locale. Tout le reste n'est pas garanti et varie d'une VM à l'autre ou d'un utilisateur à l'autre (et aussi de l'installation ou non des librairies d'internationalisation lors de l'installation de Java sur le poste client ou sur un serveur d'application JSP)
Pour répondre à ta dernière question: ce n'est donc ni forcément le point ni la virgule, car cela dépend de la "Locale" utilisée et c'est à toi de la préciser si nécessaire dans ton code (méfies-toi des "Locales" par défaut, si tu l'oublies c'est le meilleur moyen d'avoir une appli qui fonctionne chez certains et pas chez d'autres: nombre d'applis américaines supposent une locale US mais c'est souvent faux sur nos PCs ou Macs ou même nos serveurs d'applications). Consulte les Javadoc pour voir quelles fonctions de conversion de texte utilisent la locale par défaut et comment préciser une autre locale si nécessaire.
|
|
|
vendredi 23 mai 2008 à 00:20:20 |
Re : int ou float ??

amine1234Z
|
Salut wow merci beaucoup verdy_p pour la grand utile reponse MAIS est ce que je vais l'appeler just comme ça : Locale.FRANCE je sais pas ce que je doit faire, je suis un débutant en JAVA. une autre question et il possible d'utiliser cette "locale" dans le cas ou j'ai tapper un faut mot ou une fausse phrase dans une zone de text, comme au niveau du word ?? c'est a dire si j'ai tapper un faut mot, il me donne la possibilité de la correcté.
MERCI
% Mauvais Sens %
|
|
|
vendredi 23 mai 2008 à 00:31:44 |
Re : int ou float ??

verdy_p
|
regarde javadoc pour la classe de base du JRE : java.util.Locale ensuite, regarde les classes qui réalisent les conversions de chaines: partout où cela peut dépendre d'une locale, les méthodes qui utilisaient une locale par défaut acceptent aussi qu'on précise la locale à utiliser. Donc:
import java.util.Locale; ... puis référence Locale.US ou Locale.FRANCE explicitement suivant ce que tu attends.
Fais la même chose concernant les encodages: le codage local natif du système n'est pas forcément portable, notamment celui utilisé pour coder les noms de fichiers locaux, ou pour écrire dans des ficheirs texte locaux. Il faut souvent préciser une paramètre optionnel: je conseille vivement de ne plus utiliser que "UTF-8" et d'abandonner le codage système natif par défaut qui persiste uniquement pour compatibilité. D'ailleurs je conseille aussi de compiler le code Java avec les warnings activés sur les méthodes obsolètes qui utilisent encore un codage système local par défaut, sachant que le jeux de caractère natif 8 bits local diffère d'un pays à l'autre même pour la même version de Windows: le même programme avec le même source et compilé de façon identique pour la même version de java risque de ne pas marcher pareil d'une machine à l'autre suivant la Locale alors même que le programme manipule exactement les mêmes fichiers de données et se connecte aux mêmes serveurs distants (la Locale comprend des paramètres dépendant de choix de 'lu'ilisteur courant ou de paramètres système purement locaux comme la langue, l'écriture utilisée, le jeu de caractère natif du système de fichier local, les conventions sur les nombres et dates, etc.)
|
|
|
Cette discussion est classé dans : int, p1, float, i1, montext
Répondre à ce message
Sujets en rapport avec ce message
?Tableau int & float [ par kaliel ]
Bonjour à tous !!C'est mon anniversaire mais ca ne m'enpêche pas d'être au boulot et de faire du ..... Java.J'ai une petite question, je voudrais décl
Probleme dans mon programme fractale [ par Jarod1980 ]
Bonjour tout le monde,J'aurais besoin d'aide pour résoudre un petit problème. J'ai adapté un programme que j'ai fais en C (fractale de Julia) en Java.
transformer une string en un int ou un float? [ par chtieu62 ]
Comment peut on faire pour changer une chaine de caractere en entier ou flottant?Est ce possible?Quelles méthodes?Quels imports?Merci
[urgent]passage de variable entre les class [ par developvbdebut ]
Bonjour tout le mondeVoici la class Calculimport javax.swing.*;import java.awt.*;import java.awt.event.*; public class Calcul{<
point sur polyligne [ par umafaid ]
Bonjour,je réponds à ce forum parce que j'ai un problème assez similaire à ce que gracerare veut faire sauf que comme le recommande bouye, je n'utilis
Probleme avec "possible loss of precision" [ par mleloc ]
Bonjour a tous, j'ai un petit probleme avec ce morceau de code:class ZoneDessin extends Canvas{ float charge1; float abscisse; Point p;
probleme de serialization [ par hidalg007 ]
bhen ce que je fais c'est tout simplement importr des listes d'objet deja définis et serializables et les modifier , mettre a joure la liste et reseri
utiliser JTable [ par Manelh ]
Je doit réaliser une application qui permet de lire la taille d'un tableau,saisir les valeurs(dans un JTable) pour le trier ,mon problème c que je n'a
DEBUTANT JAVA [ par CABONIST ]
bon,je suis un débutant en language java,j'arrive pas a faire des interface du mon projet.j'ai tout fais dan une classe et j'ai étulisé la notion de C
C++ -> Java [ par christouilhe ]
Bonjour à vous tous.J'ai une question à vous poser ...Il se trouve que je dois retranscrire un programme C++ en Java, mais je ne sais pas du tout comm
Livres en rapport
|
Comparez les prix Nouvelle version
|