第三章总结

3.1程序结构

由顺序.选择.循环组成的结构。

 如上图程序结构,而由于结构判断导致结果不同,程序结束会得到true或者false相对应的结果。

public static void main(String[] args) {
    System.out.println("请输入一个数字:");
    Scanner input = new Scanner(System.in);
    int num = input.nextInt(); // 接收键盘输入数据
    // 判断用户输入的数据是否大于100
    if (num > 100) {
        System.out.println("输入的数字大于100");
    }
    // 判断用户输入的数据是否等于100
    if (num == 100) {
        System.out.println("输入的数字等于100");
    }
    // 判断用户输入的数据是否小于100
    if (num < 100) {
        System.out.println("输入的数字小于100");
    }
}

3.2条件语句

1.if

if语句是判断句其后面的表达式要么为true要么为false。

如果if后面的布尔表达式为true那么执行其后的语句,如果为false则不执行后面的语句

import java.util.Scanner;

public class dd{
	public static void main(String[] args) {
	    int num1 = 50;
	    int num2 = 34;
	    // 如果num1等于num2
	    if (num1 == num2) {
	        System.out.println("num1等于num2");
	    }
	    // 如果num1大于num2
	    if (num1 > num2) {
	        System.out.println("num1大于num2");
	    } else {
	        // 否则就是num1小于num2
	        System.out.println("num1小于num2");
	    }
	}}

3.if....else if 

而if....else if这种多分支语句则是满足某种条件就进行某种处理语句;如果满足别的条件,则进行其的处理;

 
public static void main(String[] args) {
    int num1 = 50;
    int num2 = 34;
    if (num1 == num2) { // 如果num1等于num2
        System.out.println("num1等于num2");
    } else if (num1 > num2) { // 如果num1大于num2
        System.out.println("num1大于num2");
    } else { // 否则就是小于
        System.out.println("num1小于num2");
    }
}
}

4.嵌套if语句的使用

  1. public static void main(String[] args) {
        String today = "周末";
        String weather = "晴朗";
        if (today.equals("周末")) {
            if (weather.equals("晴朗")) {
                System.out.println("去室外游乐场游玩");
            } else {
                System.out.println("去室内游乐场游玩");
            }
        } else {
            System.out.println("去上班");
        }
    }}

    3.2.2swich多分支语句

         public static void main(String[] args) {
            System.out.println("请输入座位号码:");
            Scanner sc = new Scanner(System.in);
            int num = sc.nextInt();
            switch (num) {
            case 8:
                System.out.println("恭喜你,获得了三等奖!");
                break;
            case 88:
                System.out.println("恭喜你,获得了二等奖!");
                break;
            case 888:
                System.out.println("恭喜你,获得了一等奖!");
                break;
            default:
                System.out.println("谢谢参与!");
                break;
            }
    }}

3.3循环语句

3.3.1while循环语句

 

public static void main(String[] args) {
    int i = 1;
    int n = 1;
    while(i <= 10) {
        n=n*i;
        i++;
    }
    System.out.println("10的阶乘结果为:"+n);

}}

3.3.2 do...while循环语句

 


public static void main(String[] args) {
    int bookIndex = 1;
    do {
        System.out.print(bookIndex+"\t");
        if(bookIndex%10 == 0) {
            System.out.println();
        }
        bookIndex++;
    }while(bookIndex<51);
}
} 

3.3.3 while与do...while比较

可以通过设置起始循环条件不成立的循环语句来比较观察while与do...while的不同,而用表达式变量设置i<1,明显循环条件不成立;

3.3.4 for循环语句

 

 for 循环和 while、do while 循环不一样:由于 while、do while 循环的循环迭代语句紧跟着循环体,因此如果循环体不能完全执行,如使用 continue 语句来结束本次循环,则循环迭代语句不会被执行。但 for 循环的循环迭代语句并没有与循环体放在一起,因此不管是否使用 continue 语句来结束本次循环,循环迭代语句一样会获得执行。

有四种可能,其一表达式一为空,其二表达式二为空,其三表达式三为空,其四则是全部表达式为空。

如图以下为各个循环语句的比较

    public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i < 11; i++) {
            sum = sum + i;
        }
        System.out.println(sum);
    }
    public static void main(String[] args) {
        int sum = 0;
        int i = 1;
        do {
            sum = sum + i;
            i++;
        } while (i < 11);
        System.out.println(sum);
    }
    public static void main(String[] args) {
        int sum = 0;
        int i = 1;
        while (i < 11) {
            sum = sum + i;
            i++;
        }
        System.out.println(sum);

}

 可以看的出三种循环结构的例子答案都为55.

3.3.5

foreach语句 其中,“类型”为集合元素的类型,“变量名”表示集合中的每一个元素,“集合”是被遍历的集合对象或数组。每执行一次循环语句,循环变量就读取集合中的一个元素

3.3.6循环语句的嵌套

循环有for.while.do.....while三种方式,三种循环可以互相嵌套列。

3.4 跳转语句

3.4.1 break语句

使用 break 语句直接强行退出循环(break 不带标签)

public static void main(String[] args) {
    int score; // 每门课的成绩
    int sum = 0; // 成绩之和
    boolean con = true; // 记录录入的成绩是否合法
    Scanner input = new Scanner(System.in);
    System.out.println("请输入学生的姓名:");
    String name = input.next(); // 获取用户输入的姓名
    for (int i = 1; i <= 6; i++) {
        System.out.println("请输入第" + i + "门课程的成绩:");
        score = input.nextInt();// 获取用户输入的成绩
        if (score < 0) { // 判断用户输入的成绩是否为负数,如果为负数,终止循环
            con = false;
            break;
        }
        sum = sum + score; // 累加求和
    }
    if (con) {
        System.out.println(name + "的总成绩为:" + sum);
    } else {
        System.out.println("抱歉,分数录入错误,请重新录入!");
    }

  3.4.2 continue语句
continue语句则是针对break语句的补充,不是立即跳出循环体语句而且跳过本次循环结束前的语句,回到循环的条件测试部分,重新开始执行循环。continue 语句类似于 break 语句,但它只能出现在循环体中。它与 break 语句的区别在于:continue 并不是中断循环语句,而是中止当前迭代的循环,进入下一次的迭代。简单来讲,continue 是忽略循环语句的当次循环。
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值