und das ergebnis in einen label ausgeben:
1.2.und 4. ist mir schon gelungen aber wenn ich folgendermassen
die wurzel ziehen will:
b = (Math.sqrt(a));
funst das nicht (fehler: methode sqr(java.lang.Double)… nicht gefunden)
obwohl ich das schon importiert habe
b = (a ^ 1/2) nimmt er ebenfalls nicht an (methode ^ nicht…)
diser befehl hat bisher nur mit konstanten zahlen funktioniert
String b = String.valueOf(Math.sqrt(a));
aber bei der variablen a (inhalt des textfeldes) funst das auch nicht
Du mußt zwischen der Klasse java.lang.Double und dem Primitive double unterscheiden.
Ersteres ist wie schon gesagt eine Klasse, du deklarierst also eine Referenz auf ein Objekt vom Typ Double. Diese Referenz kann eine null-Referenz oder eine Referenz auf Double oder eine abgeleitete Klasse enthalten.
Primitives sind keine Referenzen auf Objekte sondern enthalten immer einen Wert von exakt dem deklarierten Typ (wie hier z. B. double).
Die Methode Math.sqrt() arbeitet mit dem Primitve double, d. h. du mußt dir aus dem Double-Objekt den entsprechenden Wert holen:
Double d = 3.5;
Double e = new Double( Math.sqrt( d.doubleValue() ) );