A voir également:
- Execution d'un programme sous java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Programme demarrage windows 10 - Guide
- Comment mettre en veille un programme sous windows 10 - Guide
3 réponses
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
329
18 nov. 2008 à 00:49
18 nov. 2008 à 00:49
Bonsoir Nawar123,
Dans ton programme tu fais appel à la méthode statique de Readln.
Hors, tu n'as importé aucune classe s'appelant Readln. Autrement dit, pour le compilateur, Readln n'est qu'une chaîne incompréhensible, qu'il ne reconnait pas comme étant une classe, et c'est pour cela que ton IDE te le souligne en rouge.
Cordialement,
Dans ton programme tu fais appel à la méthode statique de Readln.
Hors, tu n'as importé aucune classe s'appelant Readln. Autrement dit, pour le compilateur, Readln n'est qu'une chaîne incompréhensible, qu'il ne reconnait pas comme étant une classe, et c'est pour cela que ton IDE te le souligne en rouge.
Cordialement,
bonsoir:
s'il vous plais est ce que vous pouver me donner un programme correcte pour lire des entrer au clavier et merci
s'il vous plais est ce que vous pouver me donner un programme correcte pour lire des entrer au clavier et merci
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
329
18 nov. 2008 à 21:00
18 nov. 2008 à 21:00
Bonsoir,
Voici un début de programme :
Après, il est possible que ta classe Readln soit plus performante que le Scanner (peut-être qu'elle gérait les exceptions levées par le scanner notamment).
Cordialement,
Voici un début de programme :
package ConsoleReader; import java.util.Scanner; public class ApplicationLireClavier { public static void main(String[] argv) { //on utilise ici le flux d'entrée standard Scanner sc = new Scanner(System.in); //On affiche les demandes dans le flux de sortie standard System.out.println("Entrez une chaîne : "); String chaine = sc.next(); System.out.println("Entrez un int: "); int entier = sc.nextInt(); //to be continued... } }
Après, il est possible que ta classe Readln soit plus performante que le Scanner (peut-être qu'elle gérait les exceptions levées par le scanner notamment).
Cordialement,
Utilisateur anonyme
21 nov. 2008 à 04:12
21 nov. 2008 à 04:12
Bonjour,
Je te propose cette classe qui permet de parser les données String entrées dans un byte, un short, un int, un long , un double ou un float avec contrôle et levées d'exceptions :
import java.io.*;
public class IntroClavier
{
static String entree = "";
static String donnee_String = "";
static byte donnee_byte = 0;
static short donnee_short = 0;
static int donnee_int = 0;
static long donnee_long = 0;
static double donnee_double = 0;
static float donnee_float = 0f;
public static String entree()
{
try
{
// Definir un flux de caracteres d'entrée: fluxE ( Peut être remplacé par scanner )
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader fluxE = new BufferedReader(isr);
// L'intro termine par <Intro>
entree = fluxE.readLine(); // entree est un String
}
catch(IOException e)
{
System.err.println("Erreur: " + e.getMessage());
}
return entree;
}
public static byte donneesByte()
{
try
{
return Byte.parseByte(entree());
}
catch(NumberFormatException e)
{
return Byte.MIN_VALUE; // valeur la plus petite
}
}
public static short donneesShort()
{
try
{
return Short.parseShort(entree());
}
catch(NumberFormatException e)
{
return Short.MIN_VALUE; // valeur la plus petite
}
}
public static int donneesInt()
{
try
{
return Integer.parseInt(entree());
}
catch(NumberFormatException e)
{
return Integer.MIN_VALUE; // valeur la plus petite
}
}
public static long donneesLong()
{
try
{
return Long.parseLong(entree());
}
catch(NumberFormatException e)
{
return Long.MIN_VALUE; // valeur la plus petite
}
}
public static double donneesDouble()
{
try
{
donnee_double = Double.parseDouble(entree());
return donnee_double;
}
catch(NumberFormatException e)
{
return Double.NaN; // Non numérique
}
}
public static float donneesFloat()
{
try
{
donnee_float = Float.parseFloat(entree());
return donnee_float;
}
catch(NumberFormatException e)
{
return Float.NaN; // Non numérique ; valeur float.
}
}
}
Tu copies cette classe dans ton dossier de travail. Elle doit être dans le même dossier que les programmes qui veulent l'utiliser, et tu la compiles.
Ensuite pour y faire appel tu procèdes comme suit :
Pour obtenir un String:
System.out.println("\nEntrer une chaine de caracteres:");
String donnee_String = IntroClavier.entree();
System.out.println("donnee_String = " + donnee_String);
et/ou:
System.out.println("\nEntrer une donnee byte:");
byte donnee_byte = IntroClavier.donneesByte();
System.out.println("donnee_byte = " + donnee_byte);
et/ou:
System.out.println("\nEntrer une donnee short:");
short donnee_short = IntroClavier.donneesShort();
System.out.println("donnee_short = " + donnee_short);
et/ou:
System.out.println("\nEntrer une donnee int de -2147483648 a 2147483647:");
int donnee_int = IntroClavier.donneesInt();
System.out.println("donnee_int = " + donnee_int);
et/ou:
System.out.println("\nEntrer une donnee long:");
long donnee_long = IntroClavier.donneesLong();
System.out.println("donnee_long = " + donnee_long);
et/ou:
System.out.println("\nEntrer une donnee double:");
double donnee_double = IntroClavier.donneesDouble();
System.out.println("donnee_double = " + donnee_double);
et/ou:
System.out.println("\nEntrer une donnee float:");
float donnee_float = IntroClavier.donneesFloat();
System.out.println("donnee_float = " + donnee_float);
Bien entendu, saut pour obtenir un String, les données numériques entrées doivent respecter le format correspondant au type que l'on veut, par exemple pour int -2147483648 à 2147483647 et que du numérique.
Cordialement,
Dan
Je te propose cette classe qui permet de parser les données String entrées dans un byte, un short, un int, un long , un double ou un float avec contrôle et levées d'exceptions :
import java.io.*;
public class IntroClavier
{
static String entree = "";
static String donnee_String = "";
static byte donnee_byte = 0;
static short donnee_short = 0;
static int donnee_int = 0;
static long donnee_long = 0;
static double donnee_double = 0;
static float donnee_float = 0f;
public static String entree()
{
try
{
// Definir un flux de caracteres d'entrée: fluxE ( Peut être remplacé par scanner )
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader fluxE = new BufferedReader(isr);
// L'intro termine par <Intro>
entree = fluxE.readLine(); // entree est un String
}
catch(IOException e)
{
System.err.println("Erreur: " + e.getMessage());
}
return entree;
}
public static byte donneesByte()
{
try
{
return Byte.parseByte(entree());
}
catch(NumberFormatException e)
{
return Byte.MIN_VALUE; // valeur la plus petite
}
}
public static short donneesShort()
{
try
{
return Short.parseShort(entree());
}
catch(NumberFormatException e)
{
return Short.MIN_VALUE; // valeur la plus petite
}
}
public static int donneesInt()
{
try
{
return Integer.parseInt(entree());
}
catch(NumberFormatException e)
{
return Integer.MIN_VALUE; // valeur la plus petite
}
}
public static long donneesLong()
{
try
{
return Long.parseLong(entree());
}
catch(NumberFormatException e)
{
return Long.MIN_VALUE; // valeur la plus petite
}
}
public static double donneesDouble()
{
try
{
donnee_double = Double.parseDouble(entree());
return donnee_double;
}
catch(NumberFormatException e)
{
return Double.NaN; // Non numérique
}
}
public static float donneesFloat()
{
try
{
donnee_float = Float.parseFloat(entree());
return donnee_float;
}
catch(NumberFormatException e)
{
return Float.NaN; // Non numérique ; valeur float.
}
}
}
Tu copies cette classe dans ton dossier de travail. Elle doit être dans le même dossier que les programmes qui veulent l'utiliser, et tu la compiles.
Ensuite pour y faire appel tu procèdes comme suit :
Pour obtenir un String:
System.out.println("\nEntrer une chaine de caracteres:");
String donnee_String = IntroClavier.entree();
System.out.println("donnee_String = " + donnee_String);
et/ou:
System.out.println("\nEntrer une donnee byte:");
byte donnee_byte = IntroClavier.donneesByte();
System.out.println("donnee_byte = " + donnee_byte);
et/ou:
System.out.println("\nEntrer une donnee short:");
short donnee_short = IntroClavier.donneesShort();
System.out.println("donnee_short = " + donnee_short);
et/ou:
System.out.println("\nEntrer une donnee int de -2147483648 a 2147483647:");
int donnee_int = IntroClavier.donneesInt();
System.out.println("donnee_int = " + donnee_int);
et/ou:
System.out.println("\nEntrer une donnee long:");
long donnee_long = IntroClavier.donneesLong();
System.out.println("donnee_long = " + donnee_long);
et/ou:
System.out.println("\nEntrer une donnee double:");
double donnee_double = IntroClavier.donneesDouble();
System.out.println("donnee_double = " + donnee_double);
et/ou:
System.out.println("\nEntrer une donnee float:");
float donnee_float = IntroClavier.donneesFloat();
System.out.println("donnee_float = " + donnee_float);
Bien entendu, saut pour obtenir un String, les données numériques entrées doivent respecter le format correspondant au type que l'on veut, par exemple pour int -2147483648 à 2147483647 et que du numérique.
Cordialement,
Dan
18 nov. 2008 à 18:16