数字の文字列(スペースで区切る)を分割してから、浮動小数点数の配列を作成する次のコードがあります。
//Split the string and then build a float array with the values.
String[] tabOfFloatString = value.split(" ");
int length = tabOfFloatString.length;
System.out.println("Length of float string is" + length);
float[] floatsArray = new float[length];
for (int l=0; l<length; l++) {
float res = Float.parseFloat(tabOfFloatString[l]);
System.out.println("Float is " + res);
floatsArray[l]=res;
}
問題は、文字列の一部の値が科学的記数法でフォーマットされていることです。たとえば、-3.04567E-8と表示されます。
私がやりたいのは、E番号を含まないフロートになってしまうことです。
私はBigDecimalを使用できることを示唆するこのスレッドを読んでいますが、これを機能させることができません-これが最善のアプローチですか、それとも他の方法を試す必要がありますか?Javaで文字列3.0103E-7を0.00000030103に変換するにはどうすればよいですか?