1、关键字
定义:被java赋有特殊含义的单词
特点: 都是小写
2.标识符
常规组成:a-z字母 0-9数字 $ _
作用:用于程序中一些自定义的名称
注意:
1.不能以数字开头
2.不能有空格
3.不能使用关键字
4.不能包含$之外的特殊字符
3.二进制
进制转换:
二/八/十六 -----> 十进制
按权展开
十进制 ---> 二
整数
除2取余 倒序取值
小数
乘以2取整 正序取值
二进制 ---> 八进制
三三一份 计算每一组的三个数的值
二进制 ---> 十六进制
四四-分
4. 原码 反码 补码
正数的原码 反码 补码 是一样的
负数的原码 在正数的基础上 最高位变1
反码 在原码的基础上除了最高位 按位取反
补码 在反码的基础上加1
计算机中存储数据的单位是为 bit 处理数据的单位是字节B 1B=8b
5. 数据的分类
常量 - 一个标识符被赋值之后,该值不能再改变
变量 - 一个标识符被赋值之后 他的值还可以再发生变化
在内存中开辟空间 在空间中存储变化的值,
定义变量的格式:
数据类型 变量名 = 值;
6. Java中的数据类型
基本数据类型
整型
byte[1B] short[2B] int[4B] long[8B]
浮点型
float[4B] double[8B]
字符型
char
布尔型
boolean
引用类型
数组
类
自定义类
系统类
String类 - 字符串类
接口
【定义一个整数的默认类型为int 小数的默认类型为double
float f = 1.23f;
long 赋的值在int范围之内 就可以直接赋值 如果超过int范围 在数值后面加L
】
7.数据类型的转换
自动转换(隐式转换)
小类型自动提升为大类型
byte short char --> int --> long ---> float ---> double
强制转换(显式转换)
将大类型的值赋值给小类型 可能会出现精度损失
小类型 变量名 = (小类型)大的变量;
8.运算符:
算术运算符
+ - * / % ++ --
【注意:
1. +: 应用于字符中 拼接符
字符换数据与任何数据使用+ 拼接 结果都是字符串
2. /: 前后位整数的时候 结果取整
3. %:如果有负数参与运算 结果正负取决于左边
4. ++(--):
a++; --> a = a+ 1;
++a; ---> a = a+1;
参与运算时:
a++: 先取a的值参与运算 a再自加
++a: 先对a进行自加 然后再将a的值参与运算
】
赋值运算符
= += -= *= /= %=
【注意:
复合赋值运算符,如果将大类型值赋值给小类型的变量 内部有一个强转
int a = 10;
a += 8.0; ---> a = (int)(a + 8.0);
】
比较运算符:结果是boolean类型的
> < <= >= == !=
逻辑运算符:
前后连接的是boolean表达式
逻辑与(& &&) -- 一假全假
&
&& : 短路与, 左边为假 右边不参与运算
逻辑或(| ||) -- 一真全真
|
|| : 短路或 左边为真 右边不参与运算
逻辑异或(^) - 相同为假 不同为真
逻辑非(!)- 真变假 假变真
位运算符:计算二进制数值的 【0表示假 1表示真】
与运算(&)- 一假全假 【参与运算时包含符号位】
或运算(|)- 一真全真 【参与运算时包含符号位】
异或运算(^)- 相同为假 不同为真 【参与运算时包含符号位】
按位取反(~)- 1变0 0变1 【参与运算时包含符号位】
按位左移(<<) 左移之后 右边空缺补0
简单的运算式: 数值*2^移动位数
按位右移(>>)
右移之后 左边空缺【正数补0 负数补1】
无符号位右移(>>>)
右移之后 左边补0
三目运算符 : 最后要有结果的
格式: 变量 = 条件表达式?表达式1 : 表达式2;
转义符: \
作用:是来转义后面的字母和符号
\n
\r
\t
\b
【注意: 使用()提高表达式的运算优先级 】
9. 流程控制语句
顺序结构 -- 代码从上往下 一句一句执行的
判断结构 - if语句
if(条表){执语;}
if(条表){执语1;}else{执语2;}
当if-else有结果时 可以与三目运算符替换
if(条表){执语1;}else if(条件1){执语2;}。。。else{执语3;}
选择结构:
switch 语句
表达式必须有结果,结果类型可以为:byte int short char String 枚举
switch(表达式){
case 结果1:{
执行语句;
break; // 结束当前选择结构
}
case 结果2:{
执行语句;
break; // 结束当前选择结构
}
。。。
default :{
执行语句;
break;
}
}
【利用不同的思维 可以将if语句 和 switch语句互换】
循环结构:
循环都有自己的初始条件 --> 保证循环次数的
while(条件表达式){循环体;}
do{循环体}while(条表);
for(循环初始化条件表达式1; 循环条件表达式2; 循环体后操作表达式3){
循环体4
}
1 - 2 - 4 - 3 - 2 - 4 -3
while循环和for循环是可以互换的
break
应用于 选择 循环结构 作用是退出当前结构
continue
应用循环结构 作用是结束当前次循环 继续下一次循环
当逻辑复杂时 会出现结构嵌套
循环嵌套时 - 嵌套层数最多三层
标记循环 - 应用嵌套结构
lable:while(true){
tag: while(true){
switch(a){
case 1:{
break;
}
}
}
}
定义:被java赋有特殊含义的单词
特点: 都是小写
2.标识符
常规组成:a-z字母 0-9数字 $ _
作用:用于程序中一些自定义的名称
注意:
1.不能以数字开头
2.不能有空格
3.不能使用关键字
4.不能包含$之外的特殊字符
3.二进制
进制转换:
二/八/十六 -----> 十进制
按权展开
十进制 ---> 二
整数
除2取余 倒序取值
小数
乘以2取整 正序取值
二进制 ---> 八进制
三三一份 计算每一组的三个数的值
二进制 ---> 十六进制
四四-分
4. 原码 反码 补码
正数的原码 反码 补码 是一样的
负数的原码 在正数的基础上 最高位变1
反码 在原码的基础上除了最高位 按位取反
补码 在反码的基础上加1
计算机中存储数据的单位是为 bit 处理数据的单位是字节B 1B=8b
5. 数据的分类
常量 - 一个标识符被赋值之后,该值不能再改变
变量 - 一个标识符被赋值之后 他的值还可以再发生变化
在内存中开辟空间 在空间中存储变化的值,
定义变量的格式:
数据类型 变量名 = 值;
6. Java中的数据类型
基本数据类型
整型
byte[1B] short[2B] int[4B] long[8B]
浮点型
float[4B] double[8B]
字符型
char
布尔型
boolean
引用类型
数组
类
自定义类
系统类
String类 - 字符串类
接口
【定义一个整数的默认类型为int 小数的默认类型为double
float f = 1.23f;
long 赋的值在int范围之内 就可以直接赋值 如果超过int范围 在数值后面加L
】
7.数据类型的转换
自动转换(隐式转换)
小类型自动提升为大类型
byte short char --> int --> long ---> float ---> double
强制转换(显式转换)
将大类型的值赋值给小类型 可能会出现精度损失
小类型 变量名 = (小类型)大的变量;
8.运算符:
算术运算符
+ - * / % ++ --
【注意:
1. +: 应用于字符中 拼接符
字符换数据与任何数据使用+ 拼接 结果都是字符串
2. /: 前后位整数的时候 结果取整
3. %:如果有负数参与运算 结果正负取决于左边
4. ++(--):
a++; --> a = a+ 1;
++a; ---> a = a+1;
参与运算时:
a++: 先取a的值参与运算 a再自加
++a: 先对a进行自加 然后再将a的值参与运算
】
赋值运算符
= += -= *= /= %=
【注意:
复合赋值运算符,如果将大类型值赋值给小类型的变量 内部有一个强转
int a = 10;
a += 8.0; ---> a = (int)(a + 8.0);
】
比较运算符:结果是boolean类型的
> < <= >= == !=
逻辑运算符:
前后连接的是boolean表达式
逻辑与(& &&) -- 一假全假
&
&& : 短路与, 左边为假 右边不参与运算
逻辑或(| ||) -- 一真全真
|
|| : 短路或 左边为真 右边不参与运算
逻辑异或(^) - 相同为假 不同为真
逻辑非(!)- 真变假 假变真
位运算符:计算二进制数值的 【0表示假 1表示真】
与运算(&)- 一假全假 【参与运算时包含符号位】
或运算(|)- 一真全真 【参与运算时包含符号位】
异或运算(^)- 相同为假 不同为真 【参与运算时包含符号位】
按位取反(~)- 1变0 0变1 【参与运算时包含符号位】
按位左移(<<) 左移之后 右边空缺补0
简单的运算式: 数值*2^移动位数
按位右移(>>)
右移之后 左边空缺【正数补0 负数补1】
无符号位右移(>>>)
右移之后 左边补0
三目运算符 : 最后要有结果的
格式: 变量 = 条件表达式?表达式1 : 表达式2;
转义符: \
作用:是来转义后面的字母和符号
\n
\r
\t
\b
【注意: 使用()提高表达式的运算优先级 】
9. 流程控制语句
顺序结构 -- 代码从上往下 一句一句执行的
判断结构 - if语句
if(条表){执语;}
if(条表){执语1;}else{执语2;}
当if-else有结果时 可以与三目运算符替换
if(条表){执语1;}else if(条件1){执语2;}。。。else{执语3;}
选择结构:
switch 语句
表达式必须有结果,结果类型可以为:byte int short char String 枚举
switch(表达式){
case 结果1:{
执行语句;
break; // 结束当前选择结构
}
case 结果2:{
执行语句;
break; // 结束当前选择结构
}
。。。
default :{
执行语句;
break;
}
}
【利用不同的思维 可以将if语句 和 switch语句互换】
循环结构:
循环都有自己的初始条件 --> 保证循环次数的
while(条件表达式){循环体;}
do{循环体}while(条表);
for(循环初始化条件表达式1; 循环条件表达式2; 循环体后操作表达式3){
循环体4
}
1 - 2 - 4 - 3 - 2 - 4 -3
while循环和for循环是可以互换的
break
应用于 选择 循环结构 作用是退出当前结构
continue
应用循环结构 作用是结束当前次循环 继续下一次循环
当逻辑复杂时 会出现结构嵌套
循环嵌套时 - 嵌套层数最多三层
标记循环 - 应用嵌套结构
lable:while(true){
tag: while(true){
switch(a){
case 1:{
break;
}
}
}
}