标识符
标识符用来表示变量、常量、类、方法、数组、文件、接口、包等元素的名字
Java中标识符由 字母、数字、下划线、$ 组成
- 区分大小写
- 不能以数字开头
- 没有长度限制,最多包含65535个字符
- 不能使用Java中的关键字
数据类型
数据类型分为引用数据类型和基本数据类型,另外还有特殊的空类型
基本数据类型有:byte、short、int、long、float、double、boolean、char
整数类型
- byte -2^7 ~ 2^7-1
- short -2^15 ~ 2^15-1
- int -2^31 ~ 2^31-1
- long -2^63 ~ 2^63-1
Java中的默认用int类整型,如果要表示更大的整数,需要在数字后面加字母L
浮点数类型
- float 单精度浮点型 -3.4 * 10^38 ~ 3.4 * 10^38
- double 双精度浮点型 -1.7 * 10^308 ~ 1.7 * 10^308
用不同进制表示整数
-
HEX,英文全称 Hexadecimal,表示十六进制。 使用 0
9 及 AF (a~f) 表示,以 0x 开头如 0xFFFF 0x 7E(14)7 7+14x16^1+7x16^2
-
DEC,英文全称 Decimal,表示十进制。 使用 0~9 表示
如 772
-
OCT,英文全称 Octal,表示八进制。 使用 0~7 表示,以 0 开头
如 0777
-
BIN,英文全称 Binary,表示二进制。 使用 0 或 1 表示,以0b开头
如 0010 1011 2^0+2^1+2^3+2^5
字符类型
字符是用单引号括起来的单个符号,占用2个字节,16位
声明一个字符:char 字符名 = 字符内容;

布尔类型
值为 true 或 false
数据类型转换
隐式类型转换: 范围小的可以自动转为范围大的
强制类型转换: 范围大的赋值给小的
-
任何类型遇到字符串,转换为字符串 int a = (int) 10.2;
-
char<int
-
java默认使用Unicode编码,Unicode兼容于Ascii
|
|
-
数据类型转换分为隐式类型转换和强制类型转换,对于隐式类型转换,有:
-
取值范围小的,和取值范围大的进行运算,小的会先提升为大的,再进行运算
-
byte、short、char三种类型的数据在运算的时候,都会先提升为int,再进行运算
-
-
如果把一个取值范围大的数值赋值给取值范围小的变量,需要使用 变量名 = (目标数据类型)被强转的数据 进行强制类型转换
键盘录入Scanner
|
|
键盘录入年月日,并输出
|
|
运算符和表达式
算术运算符
+ - * / % ++ –
自增、自减运算符 ++ –
-
如果单独写一行,++和–无论写在前面还是后面,结果都是一样的
-
参与运算时?
关系运算符
== >= <= > < !=
成立结果则为true,否则为false
!true
逻辑运算符
& | && || ^ !
在数学中,x 大于 5 小于 10 可以写为 5<x<10 ,但在java中需要把该式子拆开,再合并进行表达
即 5 < x 和 x < 10 ,写为 5 < x & x < 10
使用 短路逻辑运算符,提高代码效率
|
|
练习:键盘录入两个整数,如果有一个等于6或者两数相加的和为6的倍数,则输出true
赋值运算符
= += -= /= *= %=
将右边的数与变量原本的值进行运算后,再赋值给变量
细节:底层隐藏了一个强制类型转换
|
|
三元运算符
格式:关系表达式 ? 表达式1 :表达式2
判断关系表达式的值,如果为 true,则结果为表达式1,否则为表达式2
注意:三元表达式的结果必须被使用,单独写三元表达式会报错
|
|
练习:键盘录入三个人的身高分别为171cm,193cm,164cm,用程序输出最高身高
运算符优先级
使用括号()将需要先运算的语句包裹,可以提高程序的可读性

表达式与语句
练习
-
进制转换
-
0b11 0101 1010
-
0xFFF
-
02023
-
-
使用以下变量存储手机信息,并打印输出
-
品牌 iphone
-
尺寸 4.0
-
像素 1080*720px
-
内存 256G
-
价格 6998
-
-
键盘录入三门科目成绩,计算三门成绩的平均分
-
键盘录入长方体的长L,宽W,高H,计算长方体的体积
-
键盘录入圆柱体的底面圆半径R,高H,定义常量π为P,值为3.14,计算圆柱体的体积(圆柱体体积公式 = π * R的平方 * H)