当前位置:首页 » 编程语言 » 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

热点内容
加密狗是啥 发布:2025-02-06 03:48:03 浏览:552
phpcopy文件 发布:2025-02-06 03:41:26 浏览:410
系统配置页面怎么设置 发布:2025-02-06 03:36:34 浏览:693
家庭电脑搭建流媒体服务器 发布:2025-02-06 03:19:02 浏览:342
matlab稀疏矩阵存储 发布:2025-02-06 03:07:54 浏览:838
国际服2b2t服务器地址 发布:2025-02-06 03:06:28 浏览:390
c语言输出b 发布:2025-02-06 03:06:27 浏览:31
普通火车wifi密码多少 发布:2025-02-06 03:04:20 浏览:436
可编程监控 发布:2025-02-06 03:03:33 浏览:645
c语言取随机数 发布:2025-02-06 02:46:57 浏览:863