當前位置:首頁 » 編程語言 » java科學計數

java科學計數

發布時間: 2022-06-21 00:58:01

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中double類型不以科學計數法表示

在java中,把一個double或者BigDecimal的小數轉換為字元串時,經常會用科學計數法表示,而我們一般不想使用科學計數法,可以通過:
DecimalFormat a = new DecimalFormat("#,##0.00000000");
System.out.println(a.format(11111111.0000001000000001));
的方式來格式化輸出字元串。

對於BigDecimal的小數,如果制定精度<=6, 則可以放心的使用其toString函數。但是對於>6的精度,有可能會使用科學計數法,查看器代碼有如下判斷:
long adjusted = -(long)scale + (coeff.length-1);
if ((scale >= 0) && (adjusted >= -6)){
非科學計數法的toString.
}
其中scale指BigDecimal的精度,
coeff對應使用BigInteger存儲的值的toString字元串, coeff = intVal.abs().toString().toCharArray(),也就是說BigDecimal在對應精度下的整數值,例如BigDecimal ob = new BigDecimal(0.00000011), ob的精度為7, 則coeff="1";如果ob=new BigDecimal(0.10000011), 則coeff="1000001";如果ob=new BigDecimal(0.00000001), 則coeff="0";

⑶ Java中如何使用科學計數法

java支持輸入數字的時候直接使用科學計數法:
double d = 1.213123123123e100;
如果太大了或者小樹點太多了好像會損失精度。
另外如果真的不行就用java.math.BigDecimal,裡面是用字元串處理數據的要多長有多長,就是速度比較慢

⑷ java 如何將2.12轉換成科學計數法2.1200e+00顯示

將2.12轉換成科學計數法2.1200e+00顯示的Java程序如下

publicclassA{
publicstaticvoidmain(String[]args){
doubled=2.12;
Strings=String.format("%e",d);//%e表示結果被格式化為用計算機科學記數法表示的十進制數
System.out.println(s);
}
}

運行結果

2.120000e+00

⑸ java如何判斷一個string值是數字和科學計數法

if(string.indexof("E")>0){
System.out.println(string+"是科學計數法");
}elseif(string.indexof(".")>0){
System.out.println(string+"是科學小數");
}else{
System.out.println(string+"是整數");
}

⑹ 如何使java中double類型不以科學計數法表示

import java.text.DecimalFormat
double a = 2.3659874;
//小數格式化,引號中的0.000表示保留小數點後三位(第四位四捨五入)
DecimalFormat df = new DecimalFormat("0.000");
String num = df.format(a);
System.out.println(num);

輸出結果就是 2.366
關於DecimalFormat類,可以上網查具體資料
很C語言的一樣
回答者:ωǒ呸oヤ - 初學弟子 一級 1-21 15:49

數據類型 位元組 表示範圍
byte(位元組型) 1 -128~127
short(短整型) 2 -32768~32767
int(整型) 4 -2147483648~2147483647
long(長整型) 8 -9223372036854775808 ~ 9223372036854775807
float(浮點型) 4 -3.4E38~3.4E38
double(雙精度型) 8 -1.7E308~1.7E308
char(字元型) 2 從字元型對應的整型數來劃分,其表示範圍是0~65535
boolean(布爾型) 1 true或false
回答者:lanhawk - 助理 二級 1-21 17:25

簡單數據類型
1.布爾類型--boolean

布爾型數據只有兩個值true和false,且它們不對應於任何整數值。布爾型變數的定義如:
boolean b=true;

2.字元類型--char

字元常量:
字元常量是用單引號括起來的一個字元,如'a','A';

字元型變數:
類型為char,它在機器中佔16位,其范圍為0~65535。字元型變數的定義如:
char c='a'; /*指定變數c為char型,且賦初值為'a'*/

3.整型數據

整型常量:
◇ 十進制整數
如123,-456,0
◇ 八進制整數
以0開頭,如0123表示十進制數83,-011表示十進制數-9。
◇ 十六進制整數
以0x或0X開頭,如0x123表示十進制數291,-0X12表示十進制數-18。

整型變數:
數據類型 所佔位數 數的范圍
byte 8 -27~27-1
bhort 16 -215~215-1
int 32 -231~231-1
long 64 -263~263-1

4.浮點型(實型)數據

實型常量:
◇ 十進制數形式
由數字和小數點組成,且必須有小數點,如0.123, 1.23, 123.0
◇ 科學計數法形式
如:123e3或123E3,其中e或E之前必須有數字,且e或E後面的指數必須為整數。
◇ float型的值,必須在數字後加f或F,如1.23f。

實型變數:

數據類型 所佔位數 數的范圍
float 32 3.4e-038 ~3.4e+038
double 64 1.7e-038 ~1.7e+038

當然還有一些比較復雜的數據類型,如類(class)、介面(interface)和數組(array)。

http://www.builder.com.cn/developer/code/story/0,3800066897,39032777,00.htm

參考資料:http://bbs.xml.org.cn/blog/more.asp?name=RandomRen&id=9848

⑺ Java:這個用科學計數法表示的數是幾怎麼表示的

這個是科學計數法,不是Java中的特殊東西。
值是12340000

熱點內容
如何配置2檸檬酸 發布:2025-02-06 00:57:26 瀏覽:434
積木源碼 發布:2025-02-06 00:55:26 瀏覽:545
變分的運演算法則 發布:2025-02-06 00:55:21 瀏覽:775
x2哪個配置性價比高 發布:2025-02-06 00:40:12 瀏覽:109
豬哥亮訪問張菲 發布:2025-02-06 00:37:52 瀏覽:570
期貨賬戶怎麼改密碼 發布:2025-02-06 00:32:35 瀏覽:279
qq自動上傳群文件 發布:2025-02-06 00:26:25 瀏覽:111
安卓照片放在什麼地方 發布:2025-02-06 00:26:24 瀏覽:988
linux系統鏡像iso 發布:2025-02-06 00:15:39 瀏覽:188
存儲上料模塊的意義 發布:2025-02-06 00:14:14 瀏覽:125