Es gibt in etwa ne Funktion
BigInteger(String val)
ich will, dass
x = BigInteger(String 0.1);
ist, aber kommen da Meldung wie ) expected
Das ist keine Funktion, sondern ein Konstruktor und muss dementsprechend zusammen mit new verwednet werden.
So wie du es beschreibst, müsstest du
BigInterger x = new BigInteger("0.1");
machen. Es würde mich aber wundern, wenn das ginge, da die Klasse ja BigInteger heißt.
Versuch es mal mit BigDecimal(BigInteger, int);
In der API findest du diesen Konstruktor aufruf und auch Infos zu Biginteger (die du brauchen wirst…)
In der API findest du diesen Konstruktor aufruf und auch Infos zu Biginteger (die du brauchen wirst…)
Noe, es gibt auch BigDecimal(String).
import java.math.BigInteger;
public class Bigfloat
{
private BigInteger _biginteger;
private BigInteger _zwischensumme;
public float x;
public float testFloat()
{
_biginteger = new java.math.BigInteger("0.1");
_zwischensumme = new java.math.BigInteger("0.0");
for (int i=0;i<10;i++)
{
_zwischensumme.add(_biginteger);
}
x= _zwischensumme.floatValue();
return x;
}
}
java.lang.NumberFormatException: For input string: ".1"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:447)
at java.math.BigInteger.<init>(BigInteger.java:314)
at java.math.BigInteger.<init>(BigInteger.java:447)
at Bigfloat.testFloat(Bigfloat.java:17)
Was soll ich da bitte machen???
Benutz mal BigDecimal statt BigInteger
Und das "add" ist so ähnlich wie Plus, du musst also einen Wert zuweisen, z.B.:
_zwischensumme = _biginteger.add(_biginteger);
EDIT:
Noch was, du solltest als Wert einen String liefern, schließlich machst du mit einem Float den Sinn des BigDecimals wieder zunichte
aja was solln das tolles. Danke für die hilfe mit BigDecimal gehts
Was das soll? 0.1 ist halt keine Ganzzahl…