数据类型

来源:互联网 发布:淘宝卖三无产品犯法吗 编辑:程序博客网 时间:2024/06/16 18:55

数据类型

1. 基本类型

包括八种 基本类型
有四种整数类型
byte 1字节 (-128 – 127)(-2^7 – 2^7-1) (-2的7次方到2的7次方减1)
short 2字节 (-2^15到2^15-1)
int 4字节 (-2^31 到2|^31-1)
long 8字节 (-2^63 到2^63-1)
图例这里写图片描述
显示的输出结果 如下这里写图片描述

有两种 浮点数类型(带小数点的)
float 4字节 单精度
double 8字节 双精度
图例这里写图片描述
有一种char类型
char 2字节, 0到65535 字符或字符的证书编码 可以作为整数,作数字运算
这里写图片描述
有一种布尔类型(在流程控制中作为判断条件)
boolean 1字节 作为判断
True 真
False 假

基本类型字面值

整数字面值是int类型
* int a =8475;
 long = 9999999999;//错,右侧字面值是int类型,且超出int值
byte,short,char 三种范围比int小的整数.可以以范围内的值直接赋值
 byte a = 127;
 byte b = 128;//错,右侧是int类型但超出了byte值

 * 浮点数字面值是double类型

 double a = 3.14;
 float b = 3.14;// 错,右侧是double类型
 * 字面值后缀
 L = long long a = 999999999L;
 F= float float a = 3.14 F
 D= double double a= 3D
这里写图片描述
 * 字面值前缀
 0x – 16进制 int a = 0xff; 输出 (255)
 0 - 8 进制 int a = 0377;
 \u – char类型16进制 char a = ‘\u4e2d’

基本类型运算规则

* 运算结果的数据类型,与运算项中范围最大的类型一致
3/2得 1
3.0/2得 1.5
* byte,short,char 比int范围小的整数运算时,会自动转成int
byte a = 2
byte b =3
byte c = a+b;//错,右侧是int+int
这里写图片描述
* 整数运算溢出
int a= Integet.MAX_VALUE;
a = a+1; //不会出错,但得到的是负数最小值
正数会得出负数,负数会得出正数
这里写图片描述
* 浮点数运算不精确
2-1.9 得 0.10000000000000000009
4.35*100 得434.999999999999999994
* 浮点数的特殊值
infinity – 无穷大 3.14/0 Double.MAX_VALUE*2
NaN – Not a Numbel 不是个数 负数开平方 Math.sqrt(-2)

基本类型类型转换

*-范围小的类型—>范围大的类型
自动转换
byte a = 10;
int b = a
*范围大的类型–> f范围小的类型
 强制转换
 int a = 255;
 byte = (byte)a;

运算符

+ ,-, /,*,<, >, <=, >=, ==, !=, %
& 逻辑与: 两侧同时为真, 结果是真
&& 短路与: 左侧为假,右侧被忽略
| 逻辑或: 两侧同时为假,结果是假
|| 短路或: 左侧为真,右侧被忽略
这里写图片描述
显示(输出)结果如下
这里写图片描述


非真是假,非假是真。

0 0