JAVA 数据类型
java是一个强类型语言:
要求变量的使用要严格符合规定
所有变量都必须先定义后才能使用
java的数据类型分为两大类:
基本类型{八大基本数据类型}
引用类型
字节:
位(bit):是计算机内部数据储存的最小单位如11001100是一个八位二进制数
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示
字符:是指计算机中使用的字母数字和符号
1bit表示1位
1byte表示一字节
8b=1B
1024B=1kb
1024kb=1M
1024M=1G
整数拓展
进制:
(前缀)
二进制 0b
八进制 0
十进制 无
十六进制 0x (0—9 ,A—F)
浮点数拓展
浮点数常量就是在数学中的小数
float(单精度浮点数一般以F或f结尾)
double(双精度浮点数一般以D或d结尾)
在使用浮点数时也可以不加任何后缀,此时jvm(虚拟机)会默认浮点数为double类型
浮点数常量也可以通过指数形式表示
比较时:最好完全避免使用浮点数进行比较
一般比较浮点数用Big Decimal数学工具类来做数据
基本数据类型比较值,引用数据类型比较地址
字符拓展
字符常量用(‘’) ‘\0000’表示一个空白字符 因为java采用的是Unicode字符集。
字符串常量(“ ”)
强制转换可以把字符转换为数字(输出是前面加上int)
所有字符的本质还是数字处于Unicode表中
以及转义字符:\t \n等等
类型转换
由于java是强类型语言,所以要进行有些运算的时候,需要类型转换
低 | 高 | |||
---|---|---|---|---|
byte,short,char | int | long | float | double |
浮点数优先级大于整数。
运算中不同类型的数据先转化为同一类型,然后进行运算。
强制转换类型:高——————低 如int-----byte int i=128-----byte b=(byte)i
自动类型转换:低——————高 如int i=128 double b=i
注意:
在把高容量转换到低容量时,强制类型转换可能存在内存溢出或精度问题。
不能对布尔值进行转换
不能把对象转换为不相干的类型
println输出数字时不需要加双引号
转换不会四舍五入,要直接抹去小数位
变量
java是一种强类型语言,每个变量都必须声明其类型。
java变量是程序中最基本的存储单元,其要素包括变量名,变量类型,作用域。
注意:
1.每个变量都有类型,可以是基本类型或是引用类型。
2.变量名必须是合法标识符。
3.变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
4.实例变量:如果不设置初始值则输出为0,0.0,布尔值默认false除了基本数据类型其余都为null(空值)
5.保证程序的可读性,一行一赋值。
常量
初始化后不能再改变的值。
所谓常量可以理解成一种特殊的变量,它的值被设定后,在运行过程中不允许被改变。
final(常量名)=值
final double PI=3.14
常量名一般用大写字符
修饰符不存在先后顺序如static final 或 final static