今天学习了switch多选择结构和while循环结构,还拓展了一点反编译的知识。
下面是知识点
package 流程控制;
public class code1217 {
public static void main(String[] args) {
char a='A';
switch(a){ //switch为匹配一个具体的值
case 'A':
System.out.println("优秀");
break;
case 'B':
System.out.println("良好");
break;
case 'C':
System.out.println("及格");
break;
case 'D':
System.out.println("挂科");
break;
default:
System.out.println("未知");
/*switch多选择结构
* switch语句判断一个变量与一系列值中的某个值是否相等
* 变量类型可以是byte,short,int,char
* 从jdk7开始,可支持String类型
* case标签必须为字符串常量或字面量
* 如果在case下不加上一个break(打断),那么将同时显示下面的值,称之为case穿透现象*/
package 流程控制;
public class code12171 {
public static void main(String[] args) {
String name ="我的";
switch (name){
case ("我的"):
System.out.println("我的");
break;
case ("你的"):
System.out.println("你的");
break;
default:
System.out.println("输入错误");
//这个例子为JDK7新特性,表达式的结果可以是String字符串
/*反编译
* 高级语言源程序经过编译变成可执行文件,反编译就是逆过程。
* 即java(IDEA)--class(字节码文件)--反编译(IDEA)
* 用IDEA反编译,找到class文件,再打开IDEA文件夹,然后复制进去,在IDEA上打开即可
* 每个对象都有一个对应的哈希值
* 反编译中的hashcode是去比对两个对象的哈希值是否相等
* hashcode和equal的区别与联系
* equal()相对效率低,但equal()相等的两个对象他们的hashCode()肯定相等,也就是用equal()对比是绝对可靠的。
* hashCode()相对效率高,但hashCode()相等的两个对象他们的equal()不一定相等,也就是hashCode()不是绝对可靠的。*/
}
package 流程控制;
public class code12172 {
public static void main(String[] args) {
int a =0;
while(a<100){//定义一个值让循环停下来
a++;
System.out.println(a);
}
int b=0;
int sum=0;
while(b<=100){
sum=sum+b;
b++;
}
System.out.println(sum);
System.out.println("===============");
while(true){//死循环案例
}
/*while循环
* 语句为while(布尔表达式){
* //循环内容}
* 只要布尔表达式为true,循环就会一直执行下去
* 需要一个让表达式失效的方式来结束循环,使其停止下来
* 少部分情况需要循环一直执行(死循环),比如服务器的请求等
* 应该尽量避免死循环,会影响程序性能或造成程序卡死崩溃*/
}
}