Java流程控制

判断结构:
  if(条件表达式<结果为布尔>) {
    代码块;
    如果满足小括号中的内容,则执行大括号中的内容。
  }

  if(条件表达式) {
    如果小括号内结果为true,则执行大括号中的内容。
  } else {
    如果以上情况不满足,则执行else大括号中的内容。
  }

  if(条件表达式) {
    如果小括号内的结果为true,则执行大括号的内容、
  } else if(条件表达式) {
    如果小括号内的结果为true,则执行大括号的内容。
  } else if(条件表达式) {
    如果小括号内的结果为true,则执行大括号的内容。
  }
  ......

  else {
    如果以上情况不满足,则执行else大括号中的内容。
  }

1.判断结构必须以if开头, else if可以有0个或多个, else最多有一个,而且必须在最末尾。
2.无论有多少个else if,一个判断结构只能执行其中的一个大括号中的内容,如果满足某个条件,则执行该条件后的大括号中的内容之后跳出该判断结构。

 

键盘输入流
1.导包:在类的声明的上面写
  import java.util.Scanner;
2.创建Scanner类型的对象(写在main方法中)
  类名 对象名 = new 类名(实际参数列表);
  Scanner input = new Scanner(System.in);
3.使用键盘进行输入:
  输入int 使用 input.nextInt();
  int num = input.nextInt();

  输入字符串 使用 input.next();
  String str = input.next();

建议:由于使用输入方法的时候光标不停的闪,可以在输入上面打印一句提示语句

选择结构:
表达式的结果:byte、short、char、int、枚举(不用)、(JDK1.8 String)
  switch(表达式面) {
    case 常量值(鸡):
      代码块;
      break;
    case 常量值(蛋):
      代码块;
      break;
    case 常量值(面):
      代码块;
      break;
    .....
    default://其他都无法匹配,默认default
      代码块;
      break;
  }
1.小括号内的表达式结果必须与case后的常量一一对应,才可以选中。
2.switch可以转换if结构。
3.default代表除了以上以外的所有情况,可以有,也可以没有。
4.case 代码块和default等都是选项,可以互换位置,但是不建议,
default通常写在最后。
5.break可以用于switch选择结构,作用是跳出switch选择结构。
6.最后一个选项,可以有break也可以没有,结果都相同。
但是通常为了代码整齐,会带上break。

选择结构:

 1 import java.util.Scanner;
 2 public class Demo1{
 3     public static void main(String[] args){
 4         /*
 5             夏令营:
 6             第一名 奖励一个水杯
 7             第二名 奖励一个毛巾
 8             第三名 奖励一支笔
 9             其他名次奖励1张A4纸
10 
11         */
12         Scanner input = new Scanner(System.in);
13         /*System.out.println("请输入您的名次:");
14         int num = input.nextInt();
15         switch(num){
16             case 1:
17                 System.out.println("一个水杯");
18                 break;
19             case 2:
20                 System.out.println("一个毛巾");
21                 break;
22             case 3:
23                 System.out.println("一支笔");
24                 break;
25             default:
26                 System.out.println("一张A4纸");
27                 break;
28         }*/
29         /*
30             1号星期一,8号星期几?
31         */
32         /*
33 
34                 System.out.println("请输入今天的日期:");
35         int date = input.nextInt();
36         switch(date%7){
37             case 1:
38                 System.out.println("星期一");
39                 break;
40             case 2:
41                 System.out.println("星期二");
42                 break;
43             case 3:
44                 System.out.println("星期三");
45                 break;
46             case 4:
47                 System.out.println("星期四");
48                 break;
49             case 5:
50                 System.out.println("星期五");
51                 break;
52             case 6:
53                 System.out.println("星期六");
54                 break;
55             default:
56                 System.out.println("星期天");
57                 break;
58         }
59                 */
60         /*
61             请输入月份,求是第几个季度
62         */
63         System.out.println("请输入月份:");
64         int month = input.nextInt();
65         switch(month){
66             case 1:
67             case 2:
68             case 3:
69                 System.out.println("第一季度");
70                 break;
71             case 4:
72             case 5:
73             case 6:
74                 System.out.println("第二季度");
75                 break;
76             case 7:
77             case 8:
78             case 9:
79                 System.out.println("第三季度");
80                 break;
81             case 10:
82             case 11:
83             case 12:
84                 System.out.println("第四季度");
85                 break;
86         }
87     }
88 }
89         
View Code

循环结构:
循环四要素:
  1.变量初始化(循环变量)。
  2.循环条件(用来判断是否需要循环)。
  3.循环体(重复执行的内容)。
  4.循环变量的改变。

1.while循环
  whlie(条件表达式<结果为布尔>) {
    代码块(循环体);
    满足小括号的内容,则执行大括号中的内容。
    然后继续判断小括号中的内容.....
  }

  while循环,循环体最少执行0次。

 1 import java.util.Scanner;
 2 public class Demo2{
 3     public static void main(String[] args){
 4         /*
 5             在控制台打印10遍:回家好好做作业
 6         */
 7         /*int num = 1;//这是第几遍
 8         while(num <= 10){
 9             System.out.println("回家好好做作业" + num);
10             num++;//自增
11         }*/
12         /*
13             在控制台打印1~100
14         */
15         /*int num = 1;
16         while(num <= 100){
17             System.out.println("num=" + num);
18             num++;
19         }*/
20         /*
21             求1+2+3+... + 99 + 100的和
22         */
23 
24            // 0+1+2+3+....+100
25         /*int num = 1;
26         int sum = 0;//和
27         while(num <= 100){
28             sum += num;//sum = sum + num
29         //    System.out.println(num);//1 2 3 4 5 6 7 ....
30             num++;
31         }
32         System.out.println("sum=" + sum);
33            */
34         /*
35             1~100之间偶数的和
36             2+4+6+8+..+98+100
37 
38         */
39         /*int num = 1;
40         int sum = 0;//和
41         while(num <= 100){
42             if(num%2 == 0){//偶数
43                 //System.out.println(num);
44                 sum += num;//sum = sum + num;
45             }
46             num++;
47         }
48         System.out.println("sum=" + sum);
49         */
50         /*
51             老师问:作业做完了吗?
52             答:没有
53             快做!!!
54             老师问:作业做完了吗?
55                 答:没有
56             快做!!!
57             ....
58             老师问:作业做完了吗?
59             答:做完了!
60             回家吧。
61         */
62         Scanner input = new Scanner(System.in);
63         System.out.println("作业做完了吗?y/n");
64         String answer = input.next();
65         while("n".equals(answer)){//没做完
66             System.out.println("快做!!...");
67             System.out.println("做完了吗?y/n");
68             answer = input.next();
69         }
70         System.out.println("回家吧");
71         System.out.println("这是末尾");
72     }
73 }
View Code

2.do-while 循环

  do {
    循环体;

  } while(条件表达式);

先执行循环体,然后判断循环条件while小括号中的内容,如果
结果为true则继续执行循环体....

do-while循环,最少执行一次循环体。

 1 import java.util.Scanner;
 2 public class Demo5{
 3     public static void main(String[] args){
 4         /*
 5             请输入第1个同学的成绩:
 6              45
 7              请输入第2个同学的成绩:
 8              43
 9              请输入第3个同学的成绩:
10              56
11              请输入第4个同学的成绩:
12              78
13              请输入第5个同学的成绩:
14              49
15              和为:
16              平均分:
17              是否继续y/n?
18              y
19              请输入第1个同学的成绩:
20              25
21              请输入第2个同学的成绩:
22              343
23              请输入第3个同学的成绩:
24              566
25              请输入第4个同学的成绩:
26              88
27              请输入第5个同学的成绩:
28              19
29              和:
30              平均分:
31              是否继续y/n?
32              n
33              谢谢使用!
34         */
35         Scanner input = new Scanner(System.in);
36         String answer = "";
37         do{
38             int sum = 0;//
39             for(int i = 1; i <= 5; i++){
40                 System.out.println("请输入第" + i + "名同学的成绩:");
41                 int score = input.nextInt();
42                 sum += score;
43             }
44             System.out.println("和:" + sum);
45             System.out.println("平均分:" + sum*1.0/5);    
46             System.out.println("是否继续?y/n");
47             answer = input.next();//接收回答
48         }while("y".equals(answer));
49         System.out.println("谢谢使用!");
50     }
51 }
View Code

3.for循环(重点)

  for(变量初始化1;循环条件2;循环后执行内容3) {
    循环体4;
  }
  1243 243 243 243....
  变量初始化 循环条件 循环体 循环后执行内容

  循环条件 循环体 循环后执行内容

  循环条件 循环体 循环后执行内容
  ....

  for循环的循环变量声明在小括号中,只有当前小括号与大括号可以使用。

   如果已知循环次数的时候使用for循环。

  如果不已知循环次数使用while或do-while
  如果先判断后循环,使用while
  如果先循环后判断,使用do - while

 1 public class Demo6{
 2     public static void main(String[] args){
 3         /*
 4           使用1 2 3 4 可以组成多少个三位数,分别是?
 5 
 6         */
 7         int count = 0;//个数
 8         for(int i  = 1; i <= 4; i++){//百位
 9             for(int j = 1; j <= 4; j++){//十位
10                 for(int k = 1; k <= 4; k++){//个位
11                     System.out.println(i*100+j*10+k);
12                     //"" + i + j + k
13                     count++;
14                 }
15             }
16         }
17         System.out.println("count=" + count);
18         System.out.println("-------------------");
19         for(int i = 1; i <= 4; i++){//i控制行数
20             for(int j = 1; j <= 4;j++){//每一行*的个数
21                 System.out.print("*");
22             }
23             System.out.println();
24         
25         }
26         System.out.println("-------------------");
27         for(int i = 1; i <= 4; i++){//行数
28             for(int j = 1; j <= i; j++){//每一行*的个数
29                 System.out.print("*");
30             }
31             System.out.println();
32         }
33     }
34 }
View Code

 

转载于:https://www.cnblogs.com/weixg-p/p/10719644.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值