Java benutzer eingabe zahl

keine_maetzchen

Cadet 1st Year
Registriert
Okt. 2008
Beiträge
15
Hallo

bisher habe ich immer

Scanner eingabe1 = new Scanner(System.in);
String ant = eingabe1.next();

gemacht, wenn was eingegeben werden sollte. Das hat auch immer geklappt.
Aber jetzt will ich das man eine Zahl eingibt. oder nur eingeben kann.

natürlich könnte man einfach eine zahl eingeben, aber ich möchte diese ja in dem weiterem Quelltext verrechnen und das geht nicht wenn die eingegebne Zahl als String definiert ist.

ich hab

Scanner eingabe1 = new Scanner(System.in);
int ant = eingabe1.next();

versucht aber der meldet immer "incompitibles types"

wie kann ich das machen, dass es als Zahl verrechnet werden kann
 
Mach doch einfach:

eingabe1.nextDouble();

und fang fehlerhafte Eingaben in nem try-catch-Block per Execption(InputMissmatchException) ab.


Beispielsweise(Formatierungen gehen leider hier nicht):

import java.util.*;

public class Test
{
public static void main(String[] args)
{
while(true)
{
try
{
Scanner eingabe1 = new Scanner(System.in);
double ant = eingabe1.nextDouble();

System.out.println("Deine Eingabe= " + ant);
return;
}
catch(InputMismatchException e)
{
System.out.println("Falscher Eingabetype! Detail:" + e.toString());
}
}
}
}
 
Zuletzt bearbeitet: (Anpassungen)
ich hab das mal so übernommen aber der zeigt an " catch without try " ich hab das try aber auch mit drin
 
Zurück
Oben