从零开始学Java【08】
从零开始学Java【08】
学习视频:https://www.bilibili.com/video/BV12J41137hu?p=35
顺序结构
从上往下执行,一条条代码执行

选择结构
if 单选择结构
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
例子:


其中:equals函数是匹配函数,用来比较输入的和equals函数里面的参数是否一致
①当输入与equals里函数不一致,则布尔表达式为false,则不执行if函数体,跳出if结构
②当输入与equals里函数一致,则布尔表达式为true,则执行if函数体
if 双选择结构
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}else{
//如果布尔表达式为false将执行的语句
}


if 多选择结构
if(布尔表达式1){
//如果布尔表达式 1为true将执行的语句
}else if(布尔表达式2){
//如果布尔表达式 2为true将执行的语句
}else if(布尔表达式3){
//如果布尔表达式 3为true将执行的语句
}
...

嵌套if选择结构
if(布尔表达式1){
//如果布尔表达式 1为true将执行的语句
if(布尔表达式2){
//如果布尔表达式 2为true将执行的语句
}
}
即在一个if里面嵌套一个if语句,属于算法范畴,比如用二分法来查找
switch多选择结构![image-20220426174204681]()
switch(expression){
case value:
//语句
break;//可选
case value:
//语句
break;//可选
...
default://可选,上面的选项都执行不了默认执行default语句
//语句
}

注意在每个case后面加个break,break的功能后面会讲(其实就是执行完当前的case之后跳出循环,避免执行其它case的意思)

switch语句里面expression与value进行匹配,如果符合则执行当前case的语句
注:scanner在输入其它类型比如int,float,double这些,都可以直接scanner.intNext(),或scanner.floatNext()
但,char类型要是想要输入,就必须有格式scanner.next().charAt(0)。
注:switch可以使用字符串类型了

另,Java反编译的一些过程
Java在进行编译的时候,生成class文件(字节码文件),class文件是乱码,这时候需要反编译,而idea是可以充当反编译的工具的
步驟:
- 打开项目结构

- 找到编译输出路径

- 找到这个路径之后,打开这个路径,可以找到对应的class文件

- 如果此时用记事本打开,会发现是乱码

这个文件是被编译过的,我们要进行反编译才能恢复成原来的文件
- 在idea中打开文件夹,如下

或者找到class文件,用idea打开也可以,就可以正常显示了

这就是反编译之后的文件,同时,对比前后文件可以发现:

具体的字符串变成了哈希码,哈希码相当于身份证,每个字符串都有独特的哈希值来与之关联,比如:
图中数字”20881860“通过equals匹配函数关联到了”刘华强“,那么这串数字就是”刘华强“这个字符串的身份证


浙公网安备 33010602011771号