1、if语句java顺序结构:基本结构
选择结构:if语句、switch语句
循环结构:while语句、for语句
格式:
- if(){} else{}
- if(){} else if(){} else if(){} …else{}
- if(){} if(){}
- if(){ if(){} } —嵌套if语句
switch case 分支语句
格式:
switch(表达式){
case 常量1:代码块;break;
case 常量2:代码块;break;
case 常量3:代码块;break;
…
default :代码块;break;
}
注:
- case 后面的值都是不变的,不能是变量
- 表达式得到的结果的数据类型 必须 要和case后面的值的数据类型匹配
- 表达式得到的数据类型,常见有整型、字符、字符串
- case后尽量不放浮点数
使用时: 注意case的渗透问题,要+break;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入一个0—100之间的分数:");
int score =sc.nextInt();
int score1 =score/10;
switch (score1) {
case 10:
case 9:
System.out.println("A");break; //当score=100,case 10执行完会渗透case 9;
case 8:
System.out.println("B");break;
case 7:
System.out.println("C");break;
case 6:
System.out.println("D");break;
default:
System.out.println("E");break;
}
}
}
上方代码case 10,会往下渗透,执行完10,再执行9
注重case 10 和case 9
3、循环语句 3.1 for循环格式:
for(1初始化计数;2条件判断;3再求值参数){ 4代码块}
**循环先后:**1—2—4—3
**快捷方式:**100.for <==> for(i=0;i<100;i++)
例1://反转一个整数——挺重要的,对搞定回文数也有帮助
public class Demo07 {
public static void main(String[] args) {
int num = 123456789;
int tmp = 0;
for (int i = 9; i >=1; i--) {
int num1=num%10;
//tmp += num1*Math.pow(10,i-1);
tmp =tmp*10+num1;
num=num/10;
}
System.out.println(tmp);
}
}
例2:输入1+2+3+…+100的值
public class Demo06 {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <=100; i++) {
sum+=i;
}
System.out.println(sum);
}
}
例3:打印三角形 5行
for (int i = 1; i <=5; i++) {
for (int j = 5; j >=i ; j--) {
System.out.print(" ");
}
for (int j = 1; j <=i ; j++) {
System.out.print("*");
}
for (int j = 1; j
注意点:
- printin 输出完会换行
- print 输出完不会换行
3.2 while循环
格式1:
while(条件表达式){
循环体
}
格式2:——必执行一次循环语句
do{
循环体
}while(条件判断语句)
import java.util.Random;
import java.util.Scanner;
public class Demo08 {
public static void main(String[] args) {
Random random = new Random();
int randomnum=random.nextInt(100)+1;//随机生成一个1-100的数
//手动生成猜的数字
Scanner sc = new Scanner(System.in);
int count = 0;
while (true) {
System.out.println("猜的第"+(count+1)+"次:");
int guessNum = sc.nextInt();
count++;
if (guessNum==randomnum) {
System.out.println("猜对了");
break;
}
if (guessNum>randomnum) {
System.out.println("猜大了");
}
if (guessNum < randomnum) {
System.out.println("猜小了");
}
}
System.out.println("总共猜了 "+count+" 次");
}
}
3.3 break 和continue
break:在循环中,表示结束当前循环,不管后续是否还有循环
continue:在循环中,表示跳过当前一次循环,后续还有循环要继续进行
3.4 增强for循环
for(声明语句:表达式){
代码语句
}
int[] numbers={10,15,14,2,56}
//遍历数组的元素
for(int x:numbers){
System.out.printIn(x)
}
快捷方式: 数组名.for <==> for(int i : 数组名)



