public class PrimitiveTypeDemo {
public static void main(String[] args) {
//byte类型的数据比特位,最小,最大
System.out.println("byte数据类型的比特位:"+Byte.SIZE);
System.out.println("byte数据类型的取值范围:"+Byte.MIN_VALUE+"~"+Byte.MAX_VALUE);
import java.util.Scanner;
public class DayTest{
public static void main(String []args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入数据值:");
int number=sc.nextInt();
switch(number){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期日");
break;
default:
System.out.println("输入有误");
break;
}
}
}
注意事项:
1. 多个case后面的常量值不可以重复; //报错,case标签重复;
2. switch 后面的小括号当中只能是以下数据类型:
基本数据类型:byte short char int
引用数据类:
jdk5以后支持enum枚举类型;
jdk7以后支持字符串类型;
3. switch语句的格式可以很灵活:前后的顺序可以颠倒(甚至default也可以不在最后面),而且break可以省略;
匹配哪一个case就从哪一个位置向下执行,直到遇到了break或者代码整体结束为止;
switch 语句中 case 的穿透原理;没有遇到break且代码整体没有结束,穿透:*****
在switch语句中,如果case后面没写break,那么将出现case穿透现象,解释:程序将继续执行,而不判断下一个case后面的常量值是否与表达式匹配,直到遇到break,或者整体switch语句结束;
for循环可以转换为while循环;
public class Test{
public static void main(String[]args){
int i=1;//初始化语句
int sum=0;
while(i<=100){//判断条件语句
sum+=i;//循环体
i++;//控制条件语句/步进语句/步进/单步动作
}
}
}
案例练习:
//求1-100之间的偶数和 for循环格式求和
public class getSum{
public static void main(String []args){
int sum=0;
for(int i=1;i<=100;i++){
if(i%2==0){//如果是偶数
sum+=i;//累加
}
}
System.out.println("sum="+sum);
}
}
//求1-100之间的偶数和 while循环格式求和
public class getSum{
public static void main(String []args){
int i=1;
int sum=0;//累和变量初始为0;
while(i<=100){
if(i%2==0){
sum+=i;
}
i++;//控制条件语句/步进语句
}
System.out.println("sum="+sum);
}
}
//求1-100之间的偶数求和 do_while循环格式求和
public class getSum{
public static void main(String[]args){
int sum=0;//累和变量初始为0;
int i=1;//初始化语句
do{
if(i%2==0){
sum+=i;
}
i++;//控制条件语句/步进语句
}while(i<=100);//判断条件语句
System.out.println("sum="+sum);
}
}
三种循环的区别:
1. 如果判断条件语句从来都没有成立过,那么for循环和while循环执行的次数0,但是do while循环至少执行一次;
2. for 循环的变量在小括号当中定义,只有循环内部才可以使用。while/do_while循环的初始化语句定义在循环体外面,那么出了循环之后,初始化语句中定义的变量仍可以被访问;
continue;
1. 结束本轮循环,下一轮循环还要继续;
一旦执行,立刻跳过当前次循环剩余内容(部分),马上开始下一次循环;(但是步进语句/控制条件语句还需要执行)
案例:
public class Test_02 {
public static void main(String[] args) {
for(int i=1;i<=10;i++){
if(i==4){
continue;
}
System.out.println(i+"楼到了");
}
}
}
死循环:
public class DemoDeadLoop{
public static void main(String[]args){
for(int i=1;i<=10;i++){//步进语句/控制条件语句没有被执行,那么就是死循环
System.out.println("i="+i);
}
}
}