本文目錄一覽:
- 1、java科學記數法如何轉化成普通記數法
- 2、JAVA如何將浮點數輸出為指定位數的科學計數法?
- 3、java 科學計數法怎麼轉換為數字
- 4、JAVA 關於科學計數法的解決
- 5、java中如何將科學計數法轉成int類型
- 6、java 如何將2.12轉換成科學計數法2.1200e+00顯示
java科學記數法如何轉化成普通記數法
可以藉助java.text.DecimalFormat類,先將科學記數法轉為指定的格式的字符串,再轉為需要的普通計數法。代碼可以參考:
double a = 1.1234546789E6;
java.text.DecimalFormat df = new java.text.DecimalFormat(“00.00”);//””00.00″小數點後面的0的個數表示小數點的個數
String b = df.format(a);
JAVA如何將浮點數輸出為指定位數的科學計數法?
希望可以幫到你:
@Test
public void test4(){
float exp1 = 1.39e-43f;
System.out.println(“科學計數法1==” + exp1);// 表示1.39乘以10的負43次方
double exp2 = 47 * 10000000000000000000000000000000000000d;
System.out.println(“科學計數法2==” + exp2);// 表示47乘以10的37次方===4.7E38
float exp3 = 1e-43f;// 此時43後面必須加上f,否則會報錯.編譯器同擦汗那個會將指數最為雙精度處理。
System.out.println(“科學計數法3==” + exp3);// 表示1乘以10的負43次方
System.out.printf(“%9.2f”,exp3);
System.out.printf(“%-9.2f”,exp3);
// long n = 200;// 此時不需要在200後面加l,因為編譯器能識別這個類型,在這裡不存在含混不清的地方。
// System.out.println(n);
//
// double d = 345.678;
// String s = “hello!”;
// int i = 1234;
// //”%”表示進行格式化輸出,”%”之後的內容為格式的定義。
// System.out.printf(“%f”,d);//”f”表示格式化輸出浮點數。
// System.out.printf(“%9.2f”,exp3);//”9.2″中的9表示輸出的長度,2表示小數點後的位數。
// System.out.printf(“%+9.2f”,d);//”+”表示輸出的數帶正負號。
// System.out.printf(“%-9.4f”,d);//”-“表示輸出的數左對齊(默認為右對齊)。
// System.out.printf(“%+-9.3f”,d);//”+-“表示輸出的數帶正負號且左對齊。
// System.out.printf(“%d”,i);//”d”表示輸出十進制整數。
// System.out.printf(“%o”,i);//”o”表示輸出八進制整數。
// System.out.printf(“%x”,i);//”d”表示輸出十六進制整數。
// System.out.printf(“%#x”,i);//”d”表示輸出帶有十六進制標誌的整數。
// System.out.printf(“%s”,s);//”d”表示輸出字符串。
// System.out.printf(“輸出一個浮點數:%f,一個整數:%d,一個字符串:%s”,d,i,s);//可以輸出多個變量,注意順序。
// System.out.printf(“字符串:%2$s,%1$d的十六進制數:%1$#x”,i,s);//”X$”表示第幾個變量。
}
java 科學計數法怎麼轉換為數字
首先,需要將科學計數法轉換成一下:
例如:
BigDecimal bd = new BigDecimal(“3.40256010353E11”);
然後轉換成字符串:
String str = bd.toPlainString();
如果這個數字的長度是在int的範圍內的話,是可以轉換成int類型:
int a = Integer.parsInt(str);
如果這個數字的長度不是在Int範圍內的話,得到的就不是你想要的數字了!
JAVA 關於科學計數法的解決
import java.util.Arrays;
class Animal
{
static String str = “3.4E-5”;
static double 轉換後的數 = 0;
public static void main(String[] args)
{
Animal animal = new Animal();
轉換後的數 = animal.conversion(str);
double[] buf = {2,0.1234,轉換後的數,0.1234,0.1234};
String[] ss = new String[buf.length];
Arrays.sort(buf);//從小到大排列
for(int i = 0; i buf.length;i++)
{
if(buf[i] == 轉換後的數)//如果是原來的科學計數,將原來的str存至ss數組
{
ss[i] = str;
}
else
ss[i] = buf[i] + “”;
}//打印出排列後的結果
System.out.print(“比較後:” );
for(String s : ss)
System.out.print(s + ” “); }
//將科學計數轉換成正常數字
public double conversion(String str)
{
String[] s = str.split(“E-“);
double num1 = Double.parseDouble(s[0]);
double num2 = Double .parseDouble(s[1]);
return num1 * Math.pow(10d, num2);
}
} 運行結果:比較後:0.1234 0.1234 0.1234 2.0 3.4E-5
java中如何將科學計數法轉成int類型
首先,需要將科學計數法轉換成一下:
例如:
BigDecimal bd = new BigDecimal(“3.40256010353E11”);
然後轉換成字符串:
String str = bd.toPlainString();
如果這個數字的長度是在int的範圍內的話,是可以轉換成int類型:
int a = Integer.parsInt(str);
如果這個數字的長度不是在Int範圍內的話,得到的就不是你想要的數字了!
java 如何將2.12轉換成科學計數法2.1200e+00顯示
將2.12轉換成科學計數法2.1200e+00顯示的Java程序如下
public class A {
public static void main(String[] args) {
double d=2.12;
String s=String.format(“%e”, d);//%e表示結果被格式化為用計算機科學記數法表示的十進制數
System.out.println(s);
}
}
運行結果
2.120000e+00
原創文章,作者:YHRR,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/141237.html