使用double进行浮点数的运算
1、double和float类型表达浮点数(小数); 2、double类型的精度值是float类型的两倍,这正是双精度的来由; 3、大多数使用double表达浮点数,例如:
double pi 3.1415926;
double r 4;
double s pi * r * r;
(s);
浮点数直接量是double类型
1、浮点数的直接量有两种写法: 1)通常写法,如:0.1、10、.5; 2)科学计数法,如:1.23E2、1.23e2、1.23E-2,表达1.23E2表示1.23乘以10的2次方。 2、整型直接量为int型,浮点直接量为double类型,需要用float类型表达直接量,直接量后需要加“f”或“F”后缀,如:float f 0.1F;
double运算会出现舍入误差
1、2进制系统无法精确表示1/10,就像十进制系统无法表达1/3。 2、2进制表示10进制数会有舍入误差,在要求精确运算的业务会导致错误。 public static void main(String[] args) { double a 1.0; double b 0.9; (a-b); }
char类型
1、char类型是一个16位无符号整数,这个整数对应字符编码; 2、Java字符类型采用Unicode字符集编码,Unicode是世界通用的定长字符集,所有字符都是16位。 3、字符直接量采用字符的形式,如:'A',采用16进制的表示形式,如:‘u4e2d’;
char型变量赋值
对char型变量赋值时,采用以下三种方式: 1)、字符直接量,如:‘A’,实际上变量存储是该字符的Unicode编码(无符号整数值),一个char型变量只能存储一个字符。 2)、整型直接量:范围在0~65535之间的整数,变量中存储整数值对应的Unicode字符。如: char c1 66; char c2 'A'; char c3 'u0041';
boolean变量进行关系运算
1、boolean适合逻辑运算,表示某个条件是否成立; 2、boolean存储true或false,true表示条件成立而false表示条件不成立; 3、boolean用来存储关系运算的结果。
public static void main(String[] args) {
int a 10;
boolean result a > 11;
(result); //false
if(result){
("比11大");
} else{
("比11小");
}
}
基本类型间的转换
不同的基本类型直接可以相互转换: 1、自动类型转换:从小类型到大类型可以自动转换; 2、强制类型转换:从大类型到小类型需要强制转换。
强制类型转换精度丧失和溢出
强制类型转换精度有可能丧失和溢出,请看如下代码,理解精度丧失和溢出的概念:
public static void main(String[] args) {
double pi 3.1415926535897932384;
float f (float)pi;
(f);
}
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。