数据类型
一,整数类型
在Java中有三种:
八进制:必须以0开头
十进制:不能以0开头,0除外
十六进制:必须以0X或者0x开头
使用long时,需要在数字后面加上L或者l
long num = 214748650L;
二,浮点类型
在默认情况下,小数都被看做double类型,若使用float型小数,则需要在小数后面添加F或者f,已使用后缀D或者d来表明这是一个double类型数据,不加d不会出错,但声明float型变量时如果不加f,系统会认为变量是double类型而出错,下面举例,
float f1 = 13.23f;
double d1=4562.12d;
double = 14589.1563D;
三,字符类型
字符类型(char)用来存储单个字符,占用16位(两个字节)的内存空间,在定义字符变量时要用单引号表示,
例如 char = 'a';由于a在Unicode表中排序位置是97,因此也允许写成
char x=97;
四,布尔类型
布尔类型又称为逻辑类型,通过关键字boolear来定义布尔类型变量,只有true和false两个值,分别代表真和假,布尔值不能与整数类型进行转换
五,标识符和关键字
标识符可以简单的理解为一个名字,用来标识类名,变量名,方法名,数组名,文件名的有效字符序列
Java中规定标识符由任意顺序的字母,下划线_ 美元符号$和数组组成,并且第一个字符不能为数字,表示符不能是Java的关键字
六变量常量
变量的命名规范:
变量名必须是一个有效的标识符
变量名不可以使用Java中的关键字
变量名不能重复\
见民知道意思
int age;//声明int 型变量
char char1= 'r';//声明char型变量并赋值(初始化)
常量(constant)也被称为final变量,,常量在整个程序中只能被赋值一次,但为所有的对象共享,常量非常有用,常量除了指定数据类型外,还需要通过final关键字来限定,声明语法如下
语法: final 数据类型 常量名称[=值]
ps final double PI=3.1415926D;
七 变量的有效范围
变量分为成员变量和局部变量
七.运算符
赋值运算符 =
算数运算符 +(加) -(减) *(乘) /(除) %(求余)
自增自减运算符
八,逻辑运算符
逻辑 与 &(&&)
逻辑或 ||
逻辑非 !
使用"&"会判断两个表达式;而使用"&&"则是针对boolean类型的进行判断,当第一个表达式为FALSE时不会去判断第二个表达式,,直接输出结果节省计算机判读次数
九.位运算符
1 "按位与"运算,运算符"&",为双目运算符,法则:
如果两个整型数据a,b对应位都是1,则结果位才是1,否则为0;
2 " 按位或"运算,运算符"|",为双目运算符,
法则:如果两个操作数对应位都是0,则结果位才是0,否则为1;
按位与 00000000 00000000 00000000 00000101
111111111 111111111 111111111 111111100
输出
00000000 00000000 00000000 00000100
按位或 00000000 00000000 00000000 00000011
00000000 00000000 00000000 00000110
输出
00000000 00000000 00000000 00000111
3 "按位取反"运算,运算符"~",为单目运算,
法则:将二进制中的1修改为0
4 "按位异或"运算,运算符"^",为双目运算,
法则:当两个数的二进制表示相同时,结果为0,否则为1,若两个操作数的精度不同,则结果数的精度与精度高的操作数相同
5 移位操作 <<左移 >>右移 >>>无符号右移
十 :三元运算符
语法: 条件式?值1:值2
当条件式满足时,执行值1,否则执行值2
十一:运算符优先级
通常优先级由高到低的顺序依次是:
增量和减量运算 > 算术运算 > 比较运算 > 逻辑运算> 赋值运算
十二 ;数据类型转换
隐式转换
从低级类型向高级类型转换,系统将自动执行,这种类型转换称为隐式转换;这种转换按精度从低到高顺序为:byte <short<int<long< float<double,转换之后的结果数据类型将显示高级类型;
显式转换
当把精度高的变量的值赋值给低精度的变量时,必须使用显式转换又称强制转换
语法:(类型名)要转换的值
ps int a = (int)45.23 //输出结果45
long y = (long)456.6F; //输出结果456
int b = (int) 'b';//输出结果为100