JavaSE (Java基础):方法简介

6 Java中的方法

        下面关于Java方法的介绍都引用了某B大佬狂神的PPT

6.1 方法简介

 

        自己看注释,,,,这就是方法!

package com.zlx.method;

public class Demo01 {
    //main方法
    public static void main(String[] args) {

        //实际参数:实际调用传递给他的参数
       int sum = add(10, 32);
       System.out.println(sum);

        //test();
    }

    //加法
    public static int add(int a,int b){
        return  a+b;
    }



    //练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
    public static void  test(){
        for (int i = 1; i <= 1000; i++) {
            if (i%5==0){
                System.out.print(i+"\t");
            }
            if (i%(5*3)==0){
                System.out.println();
                //System.out.print("\n");
            }
        }
    }
}

6.2 方法的重载

         在下面这段代码当中,我们定义的这个max()就是一个判断最大值并输出的方法,但是哈我们又用了这个名为方法重载的东西,本来我们的max()只能比较int类型的数据,用了重载,等于给给max()方法的输入参数多添加了一个类型double,里面的东西都可以改。

package com.zlx.method;

public class Demo02 {
    public static void main(String[] args) {
        double max = max(10.234,10.2343);
        System.out.println(max);
    }

    //方法重载:方法的名字可以一样,参数列表必须不同
    //比大小
    public static int max(double num1,double num2){

        int  result = 0;

        if (num1==num2){
            System.out.println("num1==num2");
            return 0; //终止方法
        }

        if (num1>num2){
            result = (int)num1;
        }else {
            result = (int)num2;
        }

        return result;
    }


    //比大小
    public static int max(int num1,int num2){

        int result = 0;

        if (num1==num2){
            System.out.println("num1==num2");
            return 0; //终止方法
        }

        if (num1>num2){
            result = num1;
        }else {
            result = num2;
        }

        return result;
    }
}

6.3 方法中的可变参数

 

         自己看下面这段代码,也是比较这个输入的double类型的数的大小,不一样的是我们的方法使用了可变参数,实现了不管输入多少的数都可以比较他们的大小,里面的for循环还利用数组传递输入的值,来比较大小,取得最大的那个值并输出。

package com.zlx.method;

public class Demo04 {
    public static void main(String[] args) {
        Demo04 demo04 = new Demo04();
        demo04.test(1);

        printMax(1.4212,1.324,1.52521,1.3920);
    }


    //可变参数:一个方法中只能有一个可变参数,他必须是方法的最后一个参数。任何普通的参数必须在他之前声明。
    public void test(int... i){
        System.out.println(i[0]);
    }


    //随便输入多少个double类型的数,比较出最大的并输出他
    public static void  printMax(double... numbers){
        if (numbers.length==0){
            System.out.println("No argument passed");
        }

        double result = numbers[0];

        //排序!
        for (int i = 1;i < numbers.length;i++){
            if (numbers[i] > result){
                result = numbers[i];
            }
        }
        System.out.println("The max value is:" + result);
    }
}

 

6.4递归

     

        递归的话自己体会不,反正Java中的递归能不用就不用,因为Java用的栈的方式来存储使用数据,递归一旦多起来的话多与计算机的内存占用会很大,使得程序崩溃,每调用一层递归的函数,就会占用栈的一层内存空间,无法得到释放。 

package com.zlx.method;

public class Demo06 {
    //2! 2*1
    //5! 5*4*3*2*1
    public static void main(String[] args) {
        System.out.println(f(1000));
    }

    //1! 1
    //5! 5*4*3*2*1
    //3! 3*f(2)
    public static double f(double n){
        if (n==1){
            return 1;
        } else {
            return n*f(n-1);
        }
    }
}

 

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

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

相关文章

基于YOLOv5+PyQT5的吸烟行为检测(含pyqt页面、模型、数据集)

简介 吸烟不仅对个人健康有害,也可能在某些特定场合带来安全隐患。为了有效地监控公共场所和工作环境中的吸烟行为,我们开发了一种基于YOLOv5目标检测模型的吸烟检测系统。本报告将详细介绍该系统的实际应用与实现,包括系统架构、功能实现、使用说明、检测示例、数据集获取…

详细分析Springmvc中的@ModelAttribute基本知识(附Demo)

目录 前言1. 注解用法1.1 方法参数1.2 方法1.3 类 2. 注解场景2.1 表单参数2.2 AJAX请求2.3 文件上传 3. 实战4. 总结 前言 将请求参数绑定到模型对象上&#xff0c;或者在请求处理之前添加模型属性 可以在方法参数、方法或者类上使用 一般适用这几种场景&#xff1a; 表单…

同城跑腿APP开发,随叫随到超方便!

随着移动互联网的发展和人们生活节奏的加快&#xff0c;越来越多的人们没有闲暇的时间来做一些繁琐的事情&#xff0c;比如说买药、挂号、排队、送花、取文件等等。如果没有时间去处理这些事情怎么办&#xff1f;开发同城跑腿APP&#xff0c;提供跑腿服务&#xff0c;随时办事随…

uni-app与原生插件混合开发调试1-环境准备

uni-app与原生插件混合开发调试系列文章分为3篇&#xff0c;分别详细讲了《环境准备》、《搭建uni-app本地开发调试环境》和《安卓原生插件开发调试和打包》&#xff0c;3篇文章完整详细地介绍了“从环境安装配置到本地开发调试到原生插件打包”整个流程。 相关名词和概念解释…

C++ | Leetcode C++题解之第169题多数元素

题目&#xff1a; 题解&#xff1a; class Solution { public:int majorityElement(vector<int>& nums) {int candidate -1;int count 0;for (int num : nums) {if (num candidate)count;else if (--count < 0) {candidate num;count 1;}}return candidate;…

大咖共话|智领未来,数字化革新生命健康产业

在数字化浪潮席卷全球的今天&#xff0c;生命健康产业正迎来前所未有的发展机遇。6月20日&#xff0c;“第三届滨海中关村协同创新发展交流会”在北京隆重举办&#xff0c;唯迈医疗与业界大咖齐聚一堂&#xff0c;在“数字化赋能驱动生命健康产业发展”圆桌论坛上&#xff0c;共…

Modsecurity安装+Nginx+腾讯云CentOS+XSS-Labs靶场+WAF规则

君衍. 一、项目环境介绍二、ModSecurity介绍1、Modsecurity基本概述2、Modsecurity工作原理3、Modsecurity功能特点4、Modsecurity优点5、Modsecurity缺点 三、Nginx介绍及配置文件1、Nginx基本概述2、Nginx应用场景3、正向代理4、反向代理5、负载均衡6、动静分离7、主页面路径…

LeetCode 算法:二叉树的中序遍历 c++

原题链接&#x1f517;&#xff1a;二叉树的中序遍历 难度&#xff1a;简单⭐️ 题目 给定一个二叉树的根节点 root &#xff0c;返回 它的 中序 遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2] 示例 2&#xff1a; 输入&…

运动蓝牙耳机哪个口碑最好?五大高口碑顶尖单品推荐

在这个快节奏时代&#xff0c;智能手机的普及使得运动开放式耳机逐渐成为我们日常出行的必备单品。运动开放式耳机凭借独特的外形设计&#xff0c;赢得了众多消费者的喜爱。它们不同于传统的入耳式设计&#xff0c;以舒适佩戴为核心&#xff0c;有效缓解了长时间佩戴对耳部造成…

Pikachu靶场--CRSF

借鉴参考 CSRF跨站请求伪造&#xff08;CTF教程&#xff0c;Web安全渗透入门&#xff09;_bilibili pikachu靶场CSRF之TOKEN绕过_csrf token绕过的原理-CSDN博客 CSRF(get) 发现需要登录 查看提示&#xff0c;获取username和password 选择一个用户进行登录 选择修改个人信息 …

哪款护眼落地灯护眼效果好?五款高品质护眼落地灯分享

哪款护眼落地灯护眼效果好&#xff1f;想要保护好宝宝视力&#xff0c;从灯光上下手可是很关键&#xff01;普通照明灯有眩光、蓝光是伤害娃视力的主要“元凶”&#xff01;现在市面上护眼大路灯炙手可热&#xff0c;哪款护眼落地灯质量好&#xff1f;护眼大路灯应该怎么选呢&a…

解决vscode运行js时突然报错

1. 问题背景 创建JavaScript文件运行&#xff0c;弹出错误&#xff1a;Can’t find Node.js binary “node”: path does not exist. Make sure Node.js is installed and in your PATH, or set the “runtimeExecutable” in your launch.json 这是由于没有配置好setting.js…

快手可灵:上线图生视频和视频续写

上次介绍的快手的 Kling 大模型上线了新功能&#xff0c;其中图生视频支持将静态图像转化为生动的 5 秒视频&#xff0c;运动幅度比 Luma 低&#xff0c;但是非常稳定。视频续写则支持单次让视频运动延续 4.5 秒&#xff0c;支持连续多次的续写&#xff0c;最长可生成 3 分钟的…

数据类型 运算符

基本数据类型与引用数据类型的区分 存储内容&#xff1a; 基本数据类型&#xff1a;直接存储实际的数据值&#xff0c;如整数、浮点数、字符等。引用数据类型&#xff1a;存储对象的引用&#xff08;内存地址&#xff09;&#xff0c;而不是对象本身。 内存分配&#xff1a; 基…

[JS]函数

介绍 函数就是用来执行特点任务的代码块, 目的是实现代码复用, 提高开发效率 使用 1.0函数的声明 function 函数名 () {//函数体 } 2.0函数的调用 3.0命名规范 和变量命名规则基本一致尽量小驼峰式命名前缀应该为动词 传参 函数的参数可以极大提高函数的灵活性 1.0参数…

HTTP3(QUIC)详解

文章目录 一、HTTP3简述二、为什么不升级改造TCP而使用UDP&#xff1f;三、QUIC的实现四、HTTP3改进详解1. 快速连接建立(1-RTT初次建立&#xff0c;0-RTT恢复&#xff09;2. 无队头阻塞&#xff08;Head-of-Line Blocking&#xff09;重传机制HTTP/2 中的流HTTP/3 中的流 3. 移…

PyTorch LSTM模型深度解析:参数设置全指南

本文主要依据 Pytorch 中LSTM官方文档 &#xff0c;对其中的 模型参数 、 输入 、 输出 进行详细解释。 目录 基本原理 模型参数 Parameters 输入Inputs: input, (h_0, c_0) 输出Outputs: output, (h_n, c_n) 变量Variables 备注 基本原理 首先我们看下面这个LSTM图&am…

应届毕业之本科简历制作

因为毕设以及编制岗位面试&#xff0c;最近好久没有更新了&#xff0c;刚好有同学问如何制作简历&#xff0c;我就准备将我自己制作简历的流程分享给各位&#xff0c;到此也算是一个小的结束&#xff0c;拿了工科学位证书毕业去做&#x1f402;&#x1f40e;了。 简历主要包含内…

# Kafka_深入探秘者(3):kafka 消费者

Kafka_深入探秘者&#xff08;3&#xff09;&#xff1a;kafka 消费者 一、kafka 消费者、消费组 1、Kafka 消费者是消费组的一部分&#xff0c;当多个消费者形成一个消费组来消费主题时&#xff0c;每个消费者会收到不同分区的消息。假设有一个 T1 主题&#xff0c;该主题有…

Spring+SpringMVC+MyBatis整合

目录 1.SSM介绍1.1 什么是SSM&#xff1f;1.2 SSM框架1.2.1 Spring1.2.2 SpringMVC1.2.3 MyBatis 2.SSM框架整合2.1 建库建表2.2 创建工程2.3 pom.xml2.4 log4j.properties2.5 db.properties2.6 applicationContext-dao.xml2.7.applicationContext-tx.xml2.8 applicationContex…