注册 登录
Java基础教程

第一章: 开启Java学习之旅

第二章: 掌握计算机基础知识

第三章: 掌握命令行基础知识

第四章: 我的第一个Java程序

第五章: Java编程必备基础

第六章: Java编程的核心:控制结构

第七章: Java面向对象基础

第八章: Java面向对象进阶

第九章: Java字符串类型

第十章: Java数组与数据结构

第十一章: Java高级数据结构

第十二章: Java并发编程基础

首页 > Java基础教程 > 第六章: Java编程的核心:控制结构 > 6.3节: 转向控制结构

6.3节: 转向控制结构

薯条老师 2021-11-19 12:07:25 162775 0

编辑 收藏

广州番禺Python, Java小班周末班培训

第四期线下Java, Python小班周末班已经开课了,培训的课程有Python爬虫,Python后端开发,Python办公自动化,Python大数据分析, Java中高级工程师培训。授课详情请点击:http://www.chipscoco.com/?cate=6    

6.3.1 理解转向控制

迄今已经学习了条件控制和循环控制,在本节的内容中,我们将学习Java中的最后一个控制结构:转向控制。在学习新的内容前,先回顾下条件控制以及循环控制的定义:

条件控制是指根据表达式的值,来有条件地执行程序中的指令。循环控制是指让程序指令连续反复地执行。

理解转向控制,可以从其字面意思来进行理解,转向即调转方向,在程序的执行过程中通过转向控制来控制代码的执行过程。在Java中通过break,continue,return来实现转向控制,在以下几节内容中会分别进行讲解。

6.3.2 break-退出整个循环

break有打破和中途休息的意思,打破循环,意味着终止整个循环。通俗地进行解释,break是循环的终结者,类似T-800机器人一样的存在。

代码实例-大于2020就终止循环:

public class HelloJava{
    public  static void main(String[] args) {
        int year = 0;
        int end = 10000;
        while (year < end){
            ++year;
            // 如果变量year的值大于2020就执行break退出循环
            if(year > 2020){
                break;
            }
        }
    }
}

执行break退出循环,但只能退出break所在的循环结构,不会影响外层的循环。

代码实例-计算1-10之间的质数的和:

public class HelloJava{
    public  static void main(String[] args) {
        int end = 10;
        int sum = 0;
        boolean is_prime_number = true;
        for(int number=2; number<=end; ++number){
            // 每次迭代时设置is_composite_number为true,即假定当前number为质数
            is_prime_number = true;
            for(int number_=2; number_ < number; ++number_){
                if(number % number_ == 0){
                    // 只要当前number被整除,那么一定不是质数
                    is_prime_number = false;
                    // 执行break只会退出break所在的循环
                    break;
                }
            }
            // 如果为质数就累加
            if(is_prime_number){
                sum += number;
            }
        }
        System.out.println("1到10之间的所有质数的和:"+sum);
    }

6.3.3 continue-退出本次代码执行

与break相比,continue只退出循环的本次代码执行。假设在循环中一共需要迭代5次,在第一次循环时使用break,那么会退出循环,剩下的4次都不会执行。在第一次循环时使用continue,只会结束当次的代码执行,剩下的4次依然会执行。

代码实例-计算1-100之间所有奇数的和:

public class HelloJava{
    public  static void main(String[] args) {
        int end = 100;
        int sum = 0;
       
        for(int number=1; number<=end; ++number){
           if(number % 2 == 0)
               // 如果number能被2整除,说明是偶数,则执行continue
               continue;
           /*
           (1) 执行continue以后,不会再执行continue下面的代码
           (2) 代码能执行到sum+=number,说明number一定是奇数
            */
           sum += number;
        }
        System.out.println("1到100之间的所有奇数的和:"+sum);
    }
}

以上代码系判断当前number是否为偶数,如果为偶数就执行continue,执行了continue以后就不会再执行continue语句下面的代码,转而进入下一次循环。也可以将程序逻辑改为直接判断当前number是否为奇数,如果为奇数就与变量sum相加,这样就不需要cotinue:

public class HelloJava{
    public  static void main(String[] args) {
        int end = 100;
        int sum = 0;
       
        for(int number=1; number<=end; ++number){
           if(number % 2 == 1){
               // 如果number不能被2整除,说明是奇数,则直接与sum相加
               sum += number;
           }
        }
        System.out.println("1到100之间的所有奇数的和:"+sum);
    }

6.3.4 return-退出函数执行

编程语言中的return用来退出函数的执行,通常会返回一个值给函数的调用方。关于函数,会在第七章中进行详细讲解。

6.3.5 课后习题

(1) 谈谈你对转向控制的理解。

(2) Java中通过哪些关键字来编写转向控制?

(3)简述break与continue的主要区别。

(4) 编写一道程序来计算1-100之间的次大质数。

6.3.6 高薪就业班

(1) Python后端工程师高薪就业班,月薪10K-15K,免费领取课程大纲
(2) Python爬虫工程师高薪就业班,年薪十五万,免费领取课程大纲
(3) Java后端开发工程师高薪就业班,月薪10K-20K, 免费领取课程大纲
(4) Python大数据工程师就业班,月薪12K-25K,免费领取课程大纲

扫码免费领取学习资料:

  



欢迎 发表评论:

请登录

忘记密码我要注册

注册账号

已有账号?请登录