day05_方法

今日内容

  1. 流程控制关键字 break,continue
  2. 方法

复习

1 循环的四要素

  • 初始值
  • 控制条件
  • 循环内容
  • 迭代

2 for循环执行流程
for(初始值;控制条件;迭代){
循环体;
}

3 while和do-while什么区别

  • while先判断后执行
  • dowhile是先执行再判断(先斩后奏)

4 手写代码,写出使用for循环输出1-10的和的代码
public class Homework{
public static void main(String[] args){
int sum = 0;
for(int i = 1;i < 11;i++){
sum += i;
}
System.out.print(sum);
}
}

一、流程控制关键字

在流程控制语句中使用的关键字,通过关键字改变原有效果

例如: switch中的break,可以打断switch执行,for中break可以中断循环

这些关键字有两个

  • break
  • continue

1.1 break

位置: break 只能在switch和循环中使用

作用: 在switch和循环中可以终止当前switch和循环(一层)执行

package com.qf.word;

/**
 * --- 天道酬勤 ---
 *
 * @author QiuShiju
 * @date 2024/2/23
 * @desc break关键字
 */
public class Demo1 {

    public static void main(String[] args) {
        for (int i = 1; i < 11; i++) {
            System.out.println(i);
            if (i == 5) {
                break;// 终止循环
            }
        }
        System.out.println("后续代码");
        // 双层循环时
        for (int i = 1; i < 11; i++) {
            System.out.println("i =" + i );
            for (int j = 1; j < 11; j++) {
                System.out.println("j = " + j );
                if (j == 5) {
                    break; // 终止这一层循环
                }
            }
        }
    }
}

练习题

编写一个程序,最多接收10个数,求这些数的和
注意:中途用户可以通过输入886终止程序,并显示输入数的和

/**   思路:(任何代码出现3遍及以上,想到用循环)
* 循环10次
* scanner接收10个数
* 累加求和
* 遇到886 提前结束循环(break)
*/
  public static void main(String[] args) {
        // scanner可以new新建一个,一直使用
        // 不用放在for中重复new
        Scanner scanner = new Scanner(System.in);
        int sum = 0;
        for (int i = 1; i < 11; i++) {
            System.out.println("请输入第"+i+"个数字:" );
            int n = scanner.nextInt( );
            if (n  == 886) {
                System.out.println("退出程序!" );
                break;
            }
            sum += n; // 累加求和
        }
        System.out.println("sum = " + sum );
    }

升级: 将输出的结果按照输入的数字累加的形式输出,例如

输入数字1,2,3,4,5,输出结果 “1+2+3+4+5=15”

package com.qf.word;
import java.util.Scanner;

/**
 * --- 天道酬勤 ---
 *
 * @author QiuShiju
 * @date 2024/2/23
 * @desc break的练习
 */
public class Demo2 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int sum = 0;
        String s = "";
        for (int i = 1; i < 11; i++) {

            System.out.println("请输入第"+i+"个数字:" );
            int n = scanner.nextInt( );
            if (n  == 886) {
                System.out.println("退出程序!" );
                break;
            }
            sum += n;
            if (i  == 10) { // 是最后一次不拼接+号
                s = s + n;
            } else {
                s = s + n + "+"; // 其他数字拼接+号
            }
        }
        System.out.println(s + " = " + sum );// 结果拼接
    }
}

1.2 continue(了解)

continue: 继续的的意思,只能 在循环里面使用

作用: 暂停/中止这一次循环,继续后续循环

 public static void main(String[] args) {

        for (int i = 1; i < 11; i++) {
            if (i == 5) {
                continue; // 暂停/中止这一次循环,继续后续循环
            }
            System.out.println(i );
        }
    }

二、方法

2.1 介绍

说明: 方法(method)就是函数,其实就是一段独立的代码片段,将代码单独

作用:

  • 让代码抽取出来,单独执行—> 封装的思想
  • 重复使用

2.2 语法

方法其实第一天就见过,天天用,就是主方法

方法定义的语法格式

public static 返回值数据类型 方法名(数据类型 变量名, 数据类型 变量名2,...) {
    
}
/*
1) public static 目前每个方法先固定写死,不要问!!!!
2) 返回值类型,是指这个方法执行完返回的数据的数据类型
   如果方法执行完返回的整数,此处写int
   如果方法执行完返回的小数,此处写double
   如果方法执行完返回的字符串,此处写String
   如果方法执行完没有返回数据 ,写void
3) 方法名,是自己定义的,见名知意即可,注意是小写的驼峰
   例如: login,findUserById()
4)(),参数列表
   参数: 是指方法执行需要的数据
   参数的定义: 其实就是定义变量,数据类型 变量名,可以写多个
5) {} 方法体,方法执行的具体代码写在里面   
*/

2.3 无参 无返回值

public class Demo4 {
    // 自己定义方法
    public static void test(){
        System.out.println("演示无参无返回值的方法" );
    }
    // 主方法,是程序的唯一入口
    public static void main(String[] args) {
        // 调用方法
        test();
    }
}

image-20240223113849731

   // 主方法,是程序的唯一入口
    public static void main(String[] args) {
        // 调用方法
        printOddSum();
    }

    // 设计方法,输出计算1+3+5+...+99 的和
    public static void printOddSum() {
        int sum = 0;
        for (int i = 1; i < 100; i++) {
            if (i % 2 == 1) {
                sum += i;
            }
        }
        System.out.println("累加和:" + sum );
    }

2.4 有参无返回值

参数: 是方法执行需要的数据

参数定义: 就是变量,使用数据类型 变量名即可

为什么要参数? 通过参数的设计,方法的功能会灵活多变

image-20240223145512045

package com.qf.method;

/**
 * --- 天道酬勤 ---
 *
 * @author QiuShiju
 * @date 2024/2/23
 * @desc 有参数的方法
 */
public class Demo5 {

    // 主方法
    public static void main(String[] args) {
        // 方法有参数,调用时需要传参数
        // 即给方法的变量赋值
        printNum(15);
        check(1);
        // 方法有多个参数,要按照顺序和个数和类型传入
        sum(1,2);
        eat(3,"米饭");
        length(10);
    }

    // 设计方法打印从1到指定值
    // 方法设计参数,就是()中定义变量
    public static void printNum(int n) {
        for (int i = 1; i <= n; i++) {
            System.out.println(i);
        }
    }

    // 设计方法,输出给定数据是否是奇数/偶数
    public static void check(int n) {
        if (n % 2 == 0) {
            System.out.println(n + "是偶数 ");
        } else {
            System.out.println(n + "是奇数");
        }
    }

    // 参数可以是多个
    // 设计方法,输出传入两个整数的和
    public static void sum(int a, int b) {
        System.out.println(a + "+" + b + "=" + (a + b));
    }

    // 设计方法,输出今天你吃的几碗饭
    public static void eat(int n,String food){
        System.out.println("我今天吃了"+n+"碗"+food );
    }

    // 写一个方法,输入圆形的半径,输出其周长
    public static void length(int r) {
        System.out.println("圆形的半径是"+r+",周长是:" + (2 * 3.14 * r) );
    }
}

2.5 有参有返回值

返回值: 方法执行完返回的数据

需要注意定义返回值需要两步

  • 在方法体中使用return+值返回数据
  • 方法返回值类型将void变成对应的类型

image-20240223155003915

思考,方法为什么需要返回值?

  • 因为将一些功能代码封装在方法内,方法执行完后出现了结果
  • 我们调用方法
  • 方法返回给我们结果,可以根据返回的结果 再进行后续操作

简单说,就是方法的返回值返回给调用者,调用者要用方法的返回值

    // 设计方法,传入圆的半径r,返回圆的面积
    public static double area(int r){
        double area = 3.14 * r * r;
        return area;
    }

2.6 注意事项

  1. 方法需要写在类中方法外,即方法不能嵌套定义,顺序随意
  2. main方法是唯一入口,自己的方法需要在main方法中调用才能运行
  3. 调用时有参数的方法,必须传参数
  4. 方法定义void,方法内部不能写return
  5. 方法内有return ,不能定义void’
  6. 方法的返回值是,是返回给调用者
  7. 方法可以互相调用
    法的返回值**

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/404751.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

区块链笔记(五)---德勤相关分析报告

web3.0 定义&#xff1a; 在《Insights into a Modern World》提出&#xff0c;“信息将由用户自己发布、保管、不可追溯且永远不会泄露&#xff0c;用户的任何行为将不需要任何中间机构来帮助传递”&#xff1b;用来指代一种区块链技术&#xff0c;可以基于“无须信任的交互…

微信小程序开发:通过wx.login()获取用户唯一标识openid和unionid

下面代码展示了 openid 的获取过程。 想获取 unionid 需要满足条件&#xff1a;小程序已绑定到微信开放平台账号下&#xff0c;不然只会返回 openid。 【相关文档】 微信小程序开发&#xff1a;appid 和 secret 的获取方法 wx.login({success (res) {if (res.code) {// 发起网…

【机器学习的基本术语和概念】

曾梦想执剑走天涯&#xff0c;我是程序猿【AK】 目录 简述概要知识图谱 简述概要 提示&#xff1a;简要描述文章内容&#xff0c;适合哪些人观看 知识图谱 样本&#xff08;Sample&#xff09;/实例&#xff08;Instance&#xff09;&#xff1a;在机器学习中&#xff0c;我…

Linux中的各类时间 与 find命令的常用参数

之前研究wal日志清理的副产物&#xff0c;wal日志名被修改后文件的哪个时间会变&#xff1f;应该如何删除&#xff1f;由此整理一下Linux中atime、mtime、ctime的区别&#xff0c;以及find的常见用法。 一、 Linux中的各类时间 1. 各类时间的定义 Linux中有三种用于文件时间戳…

你听说过柔性数组吗?

目录 1. 柔性数组的概念 2. 柔性数组的特点 3. 柔性数组的使用 4. 柔性数组的优势 5.完结散花 悟已往之不谏&#xff0c;知来者犹可追 创作不易&#xff0c;宝子们&#xff01;如果这篇文章对你们有帮助的话&#…

个人博客系列-项目部署-nginx(3)

使用Nginx uwsgi进行部署django项目 一. 检查项目是否可以运行 启动项目 python manage.py runserver 0.0.0.0:8099输入ip:8099 查看启动页面 出现上述页面表示运行成功 二. 安装uwsgi并配置 2.1 下载uwsgi pip install uwsgi新建文件test.py写入内容&#xff0c;测试一…

【操作系统】磁盘文件管理系统

实验六 磁盘文件管理的模拟实现 实验目的 文件系统是操作系统中用来存储和管理信息的机构&#xff0c;具有按名存取的功能&#xff0c;不仅能方便用户对信息的使用&#xff0c;也有效提高了信息的安全性。本实验模拟文件系统的目录结构&#xff0c;并在此基础上实现文件的各种…

【前端素材】推荐优质后台管理系统Spica Admin平台模板(附源码)

一、需求分析 后台管理系统是一种用于管理网站、应用程序或系统的工具&#xff0c;它通常作为一个独立的后台界面存在&#xff0c;供管理员或特定用户使用。下面详细分析后台管理系统的定义和功能&#xff1a; 1. 定义 后台管理系统是一个用于管理和控制网站、应用程序或系统…

会话技术之cookie和session

COOKIE 什么是COOKIE? Cookie是由网站存储在用户计算机上的小型文本文件&#xff0c;用于在用户访问网站时跟踪和识别用户。Cookie可以在用户的计算机上存储有关用户行为和偏好的信息&#xff0c;以便在用户下次访问相同网站时提供个性化的体验。以下是一些关于Cookie的重要…

C语言——指针——第2篇——(第20篇)

坚持就是胜利 文章目录 一、指针和数组二、二级指针1、什么是 二级指针&#xff1f;2、二级指针 解引用 三、指针数组模拟二维数组 一、指针和数组 问&#xff08;1&#xff09;&#xff1a;指针和数组之间是什么关系呢&#xff1f; 答&#xff1a;指针变量就是指针变量&…

【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测

&#x1f3e1;浩泽学编程&#xff1a;个人主页 &#x1f525; 推荐专栏&#xff1a;《深入浅出SpringBoot》《java对AI的调用开发》 《RabbitMQ》《Spring》《SpringMVC》 &#x1f6f8;学无止境&#xff0c;不骄不躁&#xff0c;知行合一 文章目录 前言一、Java…

C++:string类

标准库中的string类 string类 1. 字符串是表示字符序列的类 2. 标准的字符串类提供了对此类对象的支持&#xff0c;其接口类似于标准字符容器的接口&#xff0c;但添加了专门用于操作单字节字符字符串的设计特性。 3. string类是使用char(即作为它的字符类型&#xff0c;使用…

统计图曲线图绘制方法

统计图曲线图绘制方法 常用的统计图有条形图、柱形图、折线图、曲线图、饼图、环形图、扇形图。 前几类图比较容易绘制&#xff0c;饼图环形图绘制较难。 曲线图的曲线绘制较难&#xff0c;今提供曲线图的绘制方法供参考。 本方法采用C语言的最基本功能&#xff1a; &#xff…

【C++】——模板初阶 | STL简介

前言: 模板初阶 | STL简介 文章目录 一、模板初阶1.1 函数模板1.2 类模板 二、STL简介 &#xff08;了解&#xff09; 一、模板初阶 泛式编程&#xff08;Generic Programming&#xff09;指的是一种编程范式&#xff0c;其核心思想是编写可以在不同数据类型上通用的代码&#…

Linux系列讲解 —— 【Vim编辑器】在Ubuntu18.04中安装新版Vim

平时用的电脑系统是Ubuntu18.04&#xff0c;使用apt安装VIM的默认版本是8.0。如果想要安装新版的Vim编辑器&#xff0c;只能下载Vim源码后进行编译安装。 目录 1. 下载Vim源码2. 编译3. 安装4. 遇到的问题4.1 打开vim后&#xff0c;文本开头有乱码现象。4.2 在Vim编辑器中&…

通信入门系列——锁相环、平方环、Costas环

微信公众号上线&#xff0c;搜索公众号小灰灰的FPGA,关注可获取相关源码&#xff0c;定期更新有关FPGA的项目以及开源项目源码&#xff0c;包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 本节目录 一、锁相环 1、压控振荡…

精酿啤酒:麦芽与啤酒花搭配的奥秘

麦芽和啤酒花是啤酒酿造过程中不可或缺的原料&#xff0c;它们的风味和特点对啤酒的口感和品质产生着深远的影响。Fendi Club啤酒在麦芽与啤酒花的搭配方面有着与众不同的技巧和见解&#xff0c;让啤酒的口感更加丰富和迷人。 首先&#xff0c;麦芽的选择是啤酒酿造的关键之一。…

C语言特殊函数

静态函数 背景知识&#xff1a;普通函数都是跨文件可见的&#xff0c;即在文件 a.c 中定义的函数可以在 b.c 中使用。 静态函数&#xff1a;只能在定义的文件内可见的函数&#xff0c;称为静态函数。 语法 staitc void f(void) // 在函数头前面增加关键字 static &#xff…

2024.2.22 C++QT 作业

思维导图 练习题 1>完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳转到其他界面。如果账…

2024年开发者的最好选择!!没有之一

中国银河证券1月23日明确指出&#xff1a;鸿蒙应用将在2024年迎来爆发。 2024年Q2推出开发者Beta版&#xff0c;2024年Q4推出商用版。今年年终将有 5000 款应用完成原生鸿蒙开发&#xff0c;未来支持 50 万款应用。覆盖便捷生活、出行文旅、金融便利、社交资讯、生产力工具、影…