java小数
⑴ java 语言中怎样输入小数点的数,如(9.55)
你说得很不清楚,如果你需要从键盘上输入一个数的话,可以:
使用Scanner类。
Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();
或者使用其它的IO流,
String line = InputStream(System.in).readLine();
double d = Double.parseDouble(line);
IO流的api有可能是错误的,但基本原理就是这样
⑵ java小数加法
System.out.printf("%.2f\n",0.9+0.9+0.1+0.5);//用类似c语言的格式输出
System.out.format("%.2f\n", 0.9+0.9+0.1+0.5);//java.util.Formatter包中的format方法格式输出
System.out.format("%1$.2f", 0.9+0.9+0.1+0.5);//1$代表第一个参数.2f代表精确到小数点后2位
2.40
2.40
2.40
程序输出结果均为2.40
建议多查API
⑶ 关于Java 小数(浮点型)相加
float的有效精度只有7位,超过了就改为double,不然无法精确运算。
double Java里两个二位小数相加,会得到小数点后很多位,这是double的缺点,你可以使用BigDecimal 来精确运算。例子:
importjava.math.BigDecimal;
publicclasstest{
publicstaticvoidmain(String[]args){
doublekk=3.14;
kk+=0.37;
System.out.println(kk);
BigDecimalb1=newBigDecimal("3.14");
BigDecimalb2=newBigDecimal("0.37");
BigDecimalb3=b1.subtract(b2);
BigDecimalb4=b1.add(b2);
System.out.println(b3);
System.out.println(b4);
}
}
⑷ java中取小数部分
import java.math.BigDecimal;
import java.util.Scanner;
public class GetFloat {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
float f = in.nextFloat();
int fInt = (int) f;
BigDecimal b1 = new BigDecimal(Float.toString(f));
BigDecimal b2 = new BigDecimal(Integer.toString(fInt));
float fPoint = b1.subtract(b2).floatValue();
System.out.println("整数部分为:" + fInt + "\n" + "小数部分为: " + fPoint);
}
}
⑸ java小数比较
double类型的数值比较应该使用差值的绝对值
例如:public class DoubleCompare
{
public static void main(String[] args)
{
float a = 0.6f;
double b = 0.6;
System.out.println(a == b);
System.out.println(Math.abs(a - b) <= 0.0000001);
}
}
第一个打印为false,第二个为true
⑹ java 小数变量类型
double和float才能标识小数,其余的不可以,float便是单精度,double标识双精度,就是小数位数不同。
⑺ java中小数的默认类型是什么
小数属于浮点型(默认为double)。
浮点型代表的是实数,其实就是包含小数的部分。也知道现实世界中是由很多复杂的数据的,所以需要这种表示实数的数据类型的支持。
一、浮点型常量
Java的实常数有两种表示形式:
十进制数形式,由数字和小数点组成,且必须有小数点,如0.123, .123, 123. ,123.0 。
科学计数法形式。如:123e3或123E3,其中e或E之前必须有数字,且e或E后面的指数必须为整数。实常数在机器中占64位,具有double型的值。对于float型的值,则要在数字后加f或F,如12.3F,它在机器中占32位,且表示精度较低。
二、浮点型变量
浮点型变量的类型有float和double两种。
数据类型所占位数的范围:
float 32位 3.4e-038~3.4e+038 ;
double 64位 1.7e-308~1.7e+308 ;
双精度类型double比单精度类型float具有更高的精度,和更大的表示范围,常常用于科学计算等高精度场合。
三、浮点型变量定义举例
float f; //指定变量f为float型
double d; //指定变量d为double型
java中没有无符号型整数,而且明确规定了整型和浮点型数据所占的内存字节数,这样就保证了安全性、鲁棒性和平台无关性。
⑻ java 保留一位小数
按照你的要求编写的Java程序如下:
importjava.util.Scanner;
publicclassA{
publicstaticvoidmain(String[]args){
intb=1024;
Scannersc=newScanner(System.in);
System.out.println("请输入任意整数:");
inta=sc.nextInt();
doublec=(double)a/b;
System.out.println(String.format("%.1f",c));
}
}
运行结果:
请输入任意整数:
3679
3.6
⑼ Java有一个小数,如何去掉小数部分
1、Math.round(float f)对小数部分四舍五入
或者强值类型转换成int类型,直接去掉小数部分!
2、
3、向上取整:Math.ceil() //只要有小数都+1
向下取整:Math.floor() //不取小数
四舍五入:Math.round() //四舍五入
⑽ java 小数
小数默认是double类型的,f的作用是将double类型强制转换为float类型.