Nybegybder i Java

Tags:    java

Hej med jer.

2 nemme spørgsmål.

HVis jeg laver et regnestykke i java og gemmer mine tal i variablerne double. Hvordan får jeg så resultatet med 2 decimaler ?

feks.

double x = 10;
double y = 7;
double z = x + y;

Så skulle Z helst give resultet med 2 decimaler.

spørgsmål nr. 2.

Hvordan begrænser jeg feks. tastatur indtastninger til at kun kunne være tal ? Så mit program ikke crasher ?



5 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Hvad med at prøve

double belob;
try {
double = Double.parseDouble(jTextField1.getText());
} catch (NumberFormatException e) {
// Kode til at informere bruger om at text feltet kun må indeholde decimaltal
}



Du kan bruge java.text.NumberFormat - Se evt. http://www.codingforums.com/showthread.php?t=45417

Ang. input:
Jeg vil "putte" det en i en try/catch, og så fange InputMismatchException.





Hej Thomas,

DecimalFormat til at bestemme decimaler...
http://www.wellho.net/solutions/java-formatting-to-a-fixed-number-of-decimal-places.html

Og hvis du vil gøre afrunding elelr decimal format mere legende...
http://java.sun.com/j2se/1.4.2/docs/api/java/text/DecimalFormat.html


Keyboard input number...
Antager at du ikke vil lave input i Swing [dialog boks].
http://www.pp.rhul.ac.uk/~george/PH2150/html/node13.html
Du skal her brouge Double.parseDouble() eller Integer.parseInt() til at få tallet ud af strengen...

... Lav input funktionaliteten til en seperart metode. parseDouble() SKAL være i en Try/Catch, og i catch kalder du input funktionalitetens metode igen, efter du laver en System.err.println("Input skal være tal.")

- Det er en NumberFormatException, hvis du ikke kan lide en Catch(Exception e) {}

Med venlig hilsen
Ieet






Hej med jer... jeg prøver lige i aften om det virker for mig. Og undskyld det sene svar.. troede jeg ville få email når der kom svar på tråden.



JanC. Jeg fik det til at virker med den vejledning som du postede´. Super godt :D

mht input. Så er jeg ikke så heldig der. Jeg bruger swing som input type, da jeg prøver at lave en grafisk application.

double belob = Double.parseDouble(jTextField1.getText());

Det er der jeg fårmit input fra.



t