一、整数类型
整数类型简称整型,用来存储整数数值,即没有小数部分的数值。可以是正整数,也可以是负数。整型数据根据它所占内存大小的不同,可分为byte、short、int和long 4种类型。它们具有不同的取值范围。
1.int型
定义int变量有以下四种语法:
int型是java整型值的默认数据类型。当多个尚未运行定义数据类型的整数做运算时,运算的结果将默认为int类型。例如,下面这行代码:
等同于如下代码:
2.byte型
byte型的定义方式与int相同。定义int型变量,代码如下:
3.short型
short型的定义方式与int相同。定义short型变量,代码如下:
4.long型
由于long的取值范围比int型大,且属于高精度数据类型,所以在赋值时要和int型做出区分,需要在整数后面加上 L 或者 l (小写的 L)。定义long类型变量,代码如下:
5.求整型类型的值
代码如下:
二、浮点类型
浮点类型简称浮点型,用来存储含有小数部分的数值。java语言中浮点类型分别为单精度浮点类型(float)和双精度浮点类型(double),它们具有不同的取值范围。
默认情况下,小数都被看作double型,若想使用float型小数,则需要在小数后面添加F或f。另外,可以使用后缀d或D来明确表明这是一个double类型数据,但不加d或D并没有硬性规定。而定义float型变量时,如果不加F或f,系统会认为是double类型数据,进而出错。定义浮点类型变量,代码如下:
根据身高体重计算BMI指数
创建BMIexponent类,声明double型变量height来记录身高,单位为米;声明int型变量weigt记录为体重,单位为千克;根据BMI=体重(身高*身高)计算BMI指数。代码如下:
三、字符类型
1. char 型
字符型(char)用于储存单个字符,占用16位(两个字节)的内存空间。在定义字符型变量时,要以单引号表示,如's'表示一个字符。但是's'则表示一个字符串,虽然只有一个字符,但由于使用单引号,它任然表示字符串,而不是字符。
使用char关键字可定义字符变量,其语法如下:
由于字符a在Unicode表中的排序位置是97,因此允许将上面的语句写成:
例:查看字符与Unicode码互相转换的结果
在项目中创建类Gess,编写如下代码,将Unicode表中某些位置上的字符以及一些字符在Unicode表中的位置在控制台上输出。
String类型为字符串类型,可以用来保存由多个字符组成的文本内容,其用法与字符类型类似,但文本内容需要用双引号标注。
2.转义字符
转义字符是一种特殊的字符变量,它以反斜杠“ \ ”开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“ 转义 ”。例如,printf函数的格式串中用到的“ \n ”就是一个转义字符,意思就是“ 回车换行 ”。java中的转义字符表如下所示。
将转义字符赋值给字符变量时,与字符常量值一样需要使用单引号。
例:输出' \ '字符和' ★ '字符的Unicode码为2605
代码如下:
四、布尔类型
布尔类型又称为逻辑类型,简称布尔型,通过关键字boolean来定义布尔类型变量。布尔类型只有true和false两个值,分别代表布尔逻辑中的“ 真 ”和“ 假 ”。布尔值不能与整数类型进行交换。布尔类型通常被用在流程控制中,作为判断条件。定义布尔类型变量,代码如下:
例:布尔类型b1的值为true,b2的值为false
代码如下:
五、运算符
1.赋值运算符 变量名=变量值
2.算术运算符 + - * \ %取余 eg: 10%5=0 3%2=1 50%11=6
3.自增字减 符号在前: ++i - -I 先计算后使用
符号在后: i++ i- - 先使用后计算
4.关系 运算符 a==b 判断a和b是否相等
a!=b 判断a和b是否不等
a>b
a<b
a>=b
a<=b
5.逻辑运算符 (有短路现象)
&& 与 并且 如果前者为假后者无需判断(有短路现象)
|| 或 或者 如果前者为真后者无需判断 (有短路现象)
! 非 取反 非假及真 非真及假
6.位运算符
位逻辑运算符
& 与 并且(无短路现象)
| 或 或者(无短路现象)
^ 非 取反 非假及真 非真及假
~ 异或 判断两者是否不一样 不一样就是真,
位移运算符
<< 左移 乘以2的n次方
>> 右移 除以2的n次方
eg : 往下取整31 15.5 15
-31 -15.5 -16
>>> 无符号右移 结果一定为正数
7.复合赋值运算符
+=
*=
%=
<<=
………..
8.三元运算符
A?B:C 判断A是否为真 真>B 假C
9.圆括号运算符
包括起来的内容优先计算
10.运算符优先级
计算时按照表3.9顺序计算
写代码时尽量把需要优先计算的内容用括号括起来。