2.再识Java

1.Java核心基础
1.1逻辑运算符
只能用于boolean类型的数据运算,判断boolean数据之间的逻辑官熙,包括与、或、非三种关系
运算符只包括&、|、&&、||、!
A & B:只有A和B都为true,结果为true,否则为false
A | B:只有A或B有一个为true,结果为true,否则为false
A && B:只有A和B都为true,结果为true,否则为false
A || B:只有A或B有一个为true,结果为true,否则为false
!A:如果A为true,则结果为false
运算效率上来说&&和||的效率更高,因为&和|,会前后都要进行一次判断,也就是AB都要各自判断一次,而&&和||只要前者判断能够得出结论,就不用再判断后者了
a++和++a,这两种自加的加号不同位置,在代码里的流程也不一样,a++是先把a拿去用了再自加,++a是先自加再拿去用。
1.2位运算符
位运算符是指对表达式以二进制为单位进行运算
十进制转二进制:目标数除以2,若能除尽,该为记作0,若除不尽,该位记作1,再对商继续除以2,以此类推,知道商为0,然后把每一位的结果反序组合就是对应的二进制
二进制转十进制:从目标数最右侧算起,本位的数值乘以本位的权重,权重就是2的第几位的位数减去一次方,把每一位数值和本位权重的乘积相加就是对应的十进制
位运算符包含&(按位与)、|(按位或)、^(按位异或)、<<(左移)、>>(右移)。(这里的&和|和前面的逻辑运算符长得一样,那么怎么区分呢,就看其操作的数据,如果是boolean型的那么就是逻辑运算,反则为位运算)
A & B:每一位数字一一对应,若都为1,该位记作1,否则为零
A | B:每一位数字一一对应,只要有一个为1,该位记作1,否则为0
A ^ B :每一位数字一一对应,相同的记作0,不同的记作1
A << B :A乘以2的B次方
A >> B :A除以2的B次方
例如:
10 & 5
1010
0101
0000
10 | 5
1010
0101
1111
10 ^ 3
1010
0010
1001
2 << 3
0010
左移三位
10000
2 >> 3
0010
右移3位
0
1.3 流程控制
switch -case 只能完成等值判断,switch支持的数据类型int、short、byte、枚举、String,不支持boolean
在使用switch-case的时候要一定注意break的添加
java
switch(变量){
case 值1:
代码1:
break;
case 值2:
代码2:
break;
default:
代码:
break;
}
if(变量1 == 值){
代码
}else{
代码
}
if(变量 == 值){
代码
}else if(变量 ==值){
代码
}else if(变量 ==值){
代码
}else{
代码
}
1.4循环
for循环,while循环,do-while循环,foreach循环
循环四要素
初始化循环变量
循环条件
循环体
更新循环变量
while和do-while 的区别
while先判断再循环
do-while先执行至少一次,再判断,再执行
do-while至少会执行一次,while可能一次都不执行
foreach是针对于集合的快捷循环方法
双重循环
一个循环的循环体是另外一个循环
java
//九九乘法表
for (int i = 1; i <= 9;i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j + " * " + i + " = " + i * j + " ");
}
System.out.println();
}
终止循环
break,直接结束循环,跳出所在的循环体
continue,跳出这一次循环,直接进入下一轮循环
评论