函数的学习

news2024/9/22 11:36:29

函数学习
最后附上全部java源码,可自行下载学习

文章目录

    • 函数入门
    • 函数重载
    • 函数可变个数参数
    • foreach输出
    • 传参 基本数据类型
    • 传参_引用数据类型
    • 文件夹展示所有里面的文件
    • 使用递归算法展示文件夹下所有文件
    • 1加到100的递归调用
    • 下载链接

函数入门

在这里插入图片描述

函数重载

在这里插入图片描述

public class Demo01 {
    /*
    函数重载原则:
        方法名相同
        参数列表不相同
    注意:
        与返回值无关
     */
    public static void main(String[] args) {
        f01(1.0);
        f01(1);
    }

    public static void f01(double money) { // double
        System.out.println("f01(double money) 被调用了");
    }

    public static int f01(int age) { // int
        System.out.println("f01(int age) 被调用了");
        return 100;
    }
}

函数可变个数参数

在这里插入图片描述

import java.util.Arrays;

public class Demo02 {
    /*
    函数可变参数
     */
    public static void main(String[] args) {
        f01(new int[]{1,3,5,7,9});
        f01();
        f01(1);
        f01(1, 2);
        f01(1, 2, 3);
    }

    public static void f01(int... x) { // 总而言之,不管如何传参数,x最终是int[]一维数组
        System.out.println("f01(int...) 被调用了");
        System.out.println(Arrays.toString(x));
    }
}

foreach输出

在这里插入图片描述

public class Demo03 {
    /*
    函数可变参数
     */
    public static void main(String[] args) {
        f01(new int[]{1,3,5,7,9});
        f01();
        f01(1);
        f01(1, 2);
        f01(1, 2, 3);
    }

    public static void f01(int... arr) { // 总而言之,不管如何传参数,x最终是int[]一维数组
        System.out.println("f01(int...) 被调用了");
        // 自动循环arr数组,也知道何时结束,每次取出一个送到变量a上
        for (int a : arr) { // foreach输出(增强版for循环),没有下标了
            System.out.println(a);
        }
    }
}

传参 基本数据类型

在这里插入图片描述

public class Demo04 {
    public static void main(String[] args) {
        int y = 10;
        f01(y); // y实参。都是值传递。
        System.out.println("Y:" + y);
    }

    /*
        x,形参
     */
    public static void f01(int x) {
        System.out.println(x);
        x++;
        System.out.println(x);
    }
}

传参_引用数据类型

在这里插入图片描述

import java.util.Arrays;

public class Demo05 {
    public static void main(String[] args) {
        int[] y = {10, 20, 30};
        f01(y); // y实参。都是值传递。
        System.out.println("y: " + Arrays.toString(y));
    }

    /*
        x,形参
     */
    public static void f01(int[] x) {
        System.out.println(Arrays.toString(x));
        x[1]++;
        System.out.println(Arrays.toString(x));
    }
}

文件夹展示所有里面的文件

在这里插入图片描述

使用递归算法展示文件夹下所有文件

import java.io.File;

public class Demo06 {
    public static void main(String[] args) {
        showFiles(new File("E:\\202203\\计科\\函数\\学习\\1"));
    }

    /*
        展示文件夹下所有的文件,包含子文件夹下的文件
     */
    public static void showFiles(File file) {
        File[] files = file.listFiles(); // 枚举该文件夹file对象下的文件或文件夹对象
        for (File f : files) {
            if (f.isFile()) System.out.println(f.getName()); // 文件
            if (f.isDirectory()) showFiles(f); // 递归调用文件夹
        }
    }
}

1加到100的递归调用

在这里插入图片描述

public class Demo07 {
    public static void main(String[] args) {
        System.out.println(sum(100));
    }

    public static int sum(int count) {
        if (count == 1) return 1;// 结束条件
        return sum(count-1)+count; // 递归表达式
    }
}

下载链接

https://llzai.lanzoum.com/i3luM14jt6je

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么企业一定要走标准化、体系化的道路?

企业实行标准化、体系化道路,有几个重要原因: 1.一致性和质量:标准化流程和系统可确保任务始终如一且高质量地执行。这种一致性对于提供满足客户期望的产品和服务至关重要,从而在客户之间建立信任和忠诚度。 2.效率和生产力&…

强化安全防线:迅软科技助力美容院提升终端安全管理水平

某美容院专注于皮肤抗衰老研究与美容领域服务,业务主要包含轮廊塑型、自体脂肪、五官雕塑等,业务涵盖中国、香港、美国、韩国等多个国家及地区提倡以积极、健康、理智的美学观点,以完善的美容院管理,过硬的技术设备,为消费者提供个性化漂亮服务。 美容院的核心诉求 美容院新产…

【攻防世界】command_execution

题目再现 小宁写了个ping功能,但没有写waf,X老师告诉她这是非常危险的,你知道为什么吗。 题目分析 本题目说没有写WAF,然后可以执行Linux经典代码PING,我猜测到服务器不会校验我所注入的代码,我利用串行执行符&&进行测…

查看CentOS版本及系统位数与设置CentOS 7.9 2009 防火墙配置放开端口的命令与过程

一、查看CentOS版本及系统位数 1.1 命令汇总 //1、安装redhat-lsb yum install -y redhat-lsb//2、查看系统版本信息 lsb_release -a //3、查看系统位数 getconf LONG_BIT1.2 截图 二、设置CentOS7.9 2009 防火墙配置放开端口 2.1 命令汇总 //禁止防火墙开机启动。这种方法方…

侯捷C++高级编程(下)

对于1个类要么像指针要么像函数 主题1:转换函数 转换函数 /** 1. 转换函数没有返回类型* 2. 转换函数一般需要加上const*/ class Fraction { public:Fraction(int num,int den1):m(num),n(den){cout<<"Fraction(int num,int den1): m/n "<< m/n<&…

[Leetcode - Python]704.二分查找(Easy)

1. 题目&#xff1a; 704.二分查找&#xff08;Easy&#xff09; 1代码&#xff1a; class Solution:def search(self, nums: List[int], target: int) -> int:left , right 0 ,len(nums)-1while left < right :mid (leftright)//2 # // 取整除&#xff0c;向…

Windows 安装 pandoc 将 jupyter 导出 pdf 文件

Windows 安装 pandoc 将 jupyter 导出 pdf 文件 1. 下载 pandoc 安装文件2. 安装 pandoc3. 安装 nbconvert4. 使用 pandoc 1. 下载 pandoc 安装文件 访问 https://github.com/jgm/pandoc/releases&#xff0c;下载最新版安装文件&#xff0c;例如&#xff0c;3.1.6.1 版&#…

【Kubernetes】Kubernetes之Pod详解

Pod 一、 Pod1. Pod 基础概念2. 在 Kubrenetes 集群中 Pod 使用方式2.1 pasue 容器2.2 kubernetes 中的 pause 容器提供的功能 3. Pod 的概念和结构组成4. Pod 的分类5. Pod 容器的分类5.1 基础容器&#xff08;infrastructure container&#xff09;5.2 初始化容器&#xff08…

【效率提升—Python脚本】根据Verilog文件自动生成tb文件

文章目录 Verilog端口文件&#xff08;仅做示范用&#xff09;对应的tb文件相应代码 在数字IC设计过程中&#xff0c;根据顶层生成testbench时存在很多重复性工作&#xff0c;因此为了提高工作效率&#xff0c;特地开发此脚本。 Verilog端口文件&#xff08;仅做示范用&#xf…

Centos7离线安装MySQL8

1、下载MySQL https://downloads.mysql.com/archives/community/ 2、下载完毕后&#xff0c;上传到Centos&#xff0c;解压 tar -xf mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar 3、逐条执行安装命令 rpm -ivh mysql-community-common-8.0.33-1.el7.x86_64.rpm rpm -ivh …

C++的vector

文章目录 迭代器失效问题构造函数赋值运算符begin() end()size() capacity() empty()reserve()operator[ ]insert()erase()resize() 迭代器失效问题 迭代器失效,实际就是迭代器底层对应指针所指向的空间被销毁了,而使用一块已经被释放的空间 1.扩容导致迭代器失效问题 在对…

JVM工作的总体机制概述

JDK、JRE、JVM关系回顾 JVM&#xff1a;Java Virtual Machine&#xff0c;翻译过来是Java虚拟机JRE&#xff1a;Java Runtime Environment&#xff0c;翻译过来是Java运行时环境 JREJVMJava程序运行时所需要的类库JDK&#xff1a;Java Development Kits&#xff0c;翻译过来是…

数据结构【图的类型定义和存储结构】

数据结构之图 图的定义和概念图的定义图的术语 图的类型定义图的存储结构数组&#xff08;邻接矩阵&#xff09;表示法无向图的邻接矩阵表示法有向图的邻接矩阵表示法网&#xff08;即有权图&#xff09;的邻接矩阵表示法 邻接矩阵的ADT定义邻接表&#xff08;链式&#xff09;…

测试经典书籍拆分讲解

一、全程软件测试 测试行业的经典书籍 测试方法测试策略领域测试主流测试技术涵盖了软件测试的流程与方法体系 二、探索式测试 探索式测试的经典代表性书籍探索式测试是业务测试和手工测试实践中的一个方法论 三、Google测试之道 高级测试工程师与架构师必读讲解google的测…

(学习笔记-进程管理)进程间有哪些通信方式?

每个进程的用户地址空间都是独立的&#xff0c;一般而言是不能互相访问的&#xff0c;但内核空间时每个进程都共享的&#xff0c;所以进程之间要通信必须通过内核 管道 在Linux命令中 [ | ] 这个竖线就是一个管道。 $ ps auxf | grep mysql 它的功能是讲前一个命令&#xf…

8月9日上课内容 nginx负载均衡

负载均衡工作当中用的很多的&#xff0c;也是面试会问的很重要的一个点 负载均衡&#xff1a;通过反向代理来实现&#xff08;nginx只有反向代理才能做负载均衡&#xff09; 正向代理的配置方法&#xff08;用的较少&#xff09; 反向代理的方式&#xff1a;四层代理与七层代…

C语言:打开调用堆栈

第一步&#xff1a;打断点 第二步&#xff1a;FnF5 第三步&#xff1a;按如图找到调用堆栈

DC-8靶机

DC-8官网地址 信息收集 靶机MAC&#xff1a; 00:0C:29:3A:46:A1 主机发现 nmap -sP 192.168.80.0/24端口扫描 nmap -A -p- 192.168.80.142访问80端口 点击页面能点击的地方&#xff0c;发现每点击一个链接&#xff0c;地址栏的?nid后面的数字就会变 尝试在数字后面加个 引…

【Leetcode】链表中两数之和(模拟加法器)(击败100%)

step by step. 题目&#xff1a; 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&…

2023年下半年软考初级程序员备考攻略

初级程序员考试科目包含基础知识和应用技术&#xff0c;各科目的考试形式都是笔试&#xff0c;满分均为75分。程序员考试需要各科目在一次考试中均及格才算合格&#xff0c;单科及格的成绩不保留&#xff0c;也不能转移到下次考试时使用。 这里给大家理清一个程序员考试的相关…