Addere to talværdier fra to strenge i Java 1,1,6
Jeg er løbet ind i et mindre problem. Det er, at jeg ikke kan få Java 1,1,6 til at addere to værdier. Man skal skrive de to talværdier i to textarea´er (tekstfelter), hvorpå min applikation skal lægge de to talværdier sammen og udskrive dem.
Kodestumpen ser sådan ud:
Det som min applikation gør er, at hvis jeg har angivet værdien 1 i felt1 og værdien 2 i felt 2, så udskriver applikationen "21" i stedet for "3". Nogle, der ved, hvad der kan være galt ?
Kodestumpen ser sådan ud:
String vaerdi1 = felt1.getText();
String vaerdi2 = felt2.getText();
String facit = (vaerdi1+vaerdi2);
textfelt.setText(facit);
Det som min applikation gør er, at hvis jeg har angivet værdien 1 i felt1 og værdien 2 i felt 2, så udskriver applikationen "21" i stedet for "3". Nogle, der ved, hvad der kan være galt ?
Kommentarer7
Re: Addere to talværdier fra to strenge i Java 1,1,6
String facit = (Integer.parseInt(felt1.getText()) + Integer.parseInt(felt2.getText()))
Bemærk at java gerne selv skulle caste tilbage til String.
Re: Addere to talværdier fra to strenge i Java 1,1,6
Re
Integer.parseInt(felt1.getText()) + Integer.parseInt(felt2.getText());
men så siger programmet, at der mangler ")" i linjen.
Prøv det her:
int result =
int result = Integer.parseInt(felt1.getText()) + Integer.parseInt(felt2.getText());
Tak
Tak, det virker!
Men nu bruger jeg kommatal i applikationen, så når jeg prøver at erstatte "int" med double, så vil den stadigvæk ikke regne med kommatal
Re: Addere to talværdier fra to strenge i Java 1,1,6
Nu kan man jo skrive alt hvad man vil i et tekstfelt så her er lidt kode til at håndtere
1) tjek om det *er* et tal
2) konverter tallet og brug det
public static boolean isNumber(String str) {
try {
Integer.parseInt(str);
return true;
} catch ( NumberFormatException e) {
return false;
}
}
int res=0;
if ( isNumber( felt1.getText() ) && isNumber( felt2.getText() ) ) {
try {
res = Integer.parseInt(felt1.getText());
res += Integer.parseInt(felt2.getText());
} catch ( NumberFormatException e ) {} //sker ikke da isNumber tjekker for os
nu skulle res gerne holde værdien :) husk selv at håndtere hvad der skal ske, såfremt if-blokken ikke køres (da et af felterne IKKE er en int!)
Re: Addere to talværdier fra to strenge i Java 1,1,6
public class test {
public static void main(String args[]) {
String nr1 = "3.14";
String nr2 = "2.67";
double res = 0.0;
try {
res = Double.valueOf(nr1).doubleValue() + Double.valueOf(nr2).doubleValue();
}
catch(Exception exc) {
System.out.println("Error");
System.exit(-1);
}
System.out.println(res);
}
}