当前位置: 首页 > news >正文

java的参数传递机制概述,方法重载概述,以及相关案例

前言:

学了Java的传递机制,稍微记录一下。循循渐进,daydayup!

 java的参数传递机制概述

1,java的参数传递机制是什么?

java的参数传递机制是一种值传递机制。

2,值传递是什么?

值传递指的是,传输实参给方法形参的时候,实参存储的值的副本。

3,实参/形参是什么?

实参指的是在方法内部定义的变量。形参指的是方法定义的变量。如下图:

基本类型和引用类型的参数在传递时有什么不同?

1,基本类型的参数传递

基本类型的参数传递是一种值传递,参数储存的是数据值

例:如图代码

  public static void main(String[] args) {int q =10;//laal(q);System.out.println("main"+q);}public static void laal(int q){System.out.println("一次"+ q);q = 20;System.out.println("二次"+ q);}

结果如下:即使在方法里q赋值成了20,在main里q依旧输出10;

2,引用类型的参数传递

 引用类型的参数传递同样是一种值传递,参数储存的是地址值

 例:如图代码

 public static void main(String[] args) {int [] lala = {1,2,3,4,5};la( lala);System.out.println("main"+lala [1]);}public static void la(int [] lala){System.out.println("第一次"+lala[1]);lala [1] = 20;System.out.println("第二次"+lala[1]);}

结果如下:当方法中数组里的数改变后,main中也随之改变(因为参数记录的是地址值,并不影响引用数值的改变)

 方法重载

1,什么是方法重载?

一个类中,多个方法的名称相同,但他们的形参列表不同

2,方法重载需要注意什么?

一个类中,只要一些方法的名称相同,形参列表不同(形参的个数,类型,顺序不同),那就是重载了

3,重载的应用场合是什么?

一类业务需要多种解决方案时(此时用方法重载特别专业) 

例:如图代码

 public static void lala(){}public static int lala(int a){ return a;}public static int lala(int a,int b){return a +b ;}

 

综合案例

案例1,用方法,把数组{1,2,3,4,5}按照[1|2|3|4|5]格式输出

public class definedemo3 {public static void main(String[] args) {int [] lol = {1,2,3,4,5};lala(lol);}public static void lala(int [] lol){if(lol == null){System.out.println("null");return;//以防是null}System.out.print("[");//添加[for (int i = 0; i < lol.length; i++) {//使数组循环输出System.out.print(i == lol.length - 1 ? lol[i]:lol[i]+"|");}//判断i是否等于数组最大长度,如果是则不输出|System.out.println("]");//加上]}
}

实验结果:

 

案例2:两个数组对比,如果一致,输出true

实验思路:判断两个是否null;再判断两个长度是否一样;再判断两个数是否相同;

  public static void main(String[] args) {int[] q1 = {1,2,3};int[] q2 = {1,2,3};System.out.println(lala(q1,q2));}public static boolean lala(int [] q1,int [] q2){if (q1 == null && q2 == null){return  true;}if (q1 == null || q2 ==null){return false;}if (q1.length != q2.length){return false;}for (int i = 0; i < q1.length; i++) {if (q1[i] != q2[i]){return  false;}}return true;}

实验结果:实验成功,一致输出true,不一致输出false

案例3 :设计两个模式,模式1为发射导弹;模式2为向指定地区发射导弹

public class overloaddemo1 {public static void main(String[] args) {fire(1);fire("哈哈国",1);}public static void fire(int a){System.out.println(a);}public static void fire(String con,int a  ){System.out.println("向"+con+"发射"+ a+"枚导弹");}
}

实验结果:模式1为发射一枚导弹,模式2为向哈哈国发射1枚导弹

今日结束!

---------------------------------------------------------------------------------------------------------------------------------

最后

如果您看到了这篇文章,同时您也在学习java,希望您阅读这篇文章,希望与您一起讨论

基于黑马程序员的java学习笔记(持续更新)

 

相关文章:

java的参数传递机制概述,方法重载概述,以及相关案例

前言&#xff1a; 学了Java的传递机制&#xff0c;稍微记录一下。循循渐进&#xff0c;daydayup&#xff01; java的参数传递机制概述 1&#xff0c;java的参数传递机制是什么&#xff1f; java的参数传递机制是一种值传递机制。 2&#xff0c;值传递是什么&#xff1f; 值…...

2013年第二届数学建模国际赛小美赛B题寄居蟹进化出人类的就业模式解题全过程文档及程序

2013年第二届数学建模国际赛小美赛 B题 寄居蟹进化出人类的就业模式 原题再现&#xff1a; 寄居蟹是美国最受欢迎的宠物品种&#xff0c;依靠其他动物的壳来保护。剥去寄居蟹的壳&#xff0c;你会看到它柔软、粉红色的腹部卷曲在头状的蕨类叶子后面。大多数寄居蟹喜欢蜗牛壳&…...

2023总结

随着各大应用程序开始发送自己的年终总结&#xff0c;我的2023也只剩最后的几个小时了 &#xff0c;我的2023可以说是过的还算顺利&#xff0c;但是也算是一路坎坷&#xff0c;希望2024&#xff0c;我的本命年能够让我过的顺利点。 1&#xff0c;毕业进度 毕业进度总体来说还…...

Prometheus 监控进程

prometheus 进程的监控 1. process exporter功能 2. 监控目标对主机进程的监控&#xff0c;chronyd sshd 等服务进程已经已定义脚本运行程序的运行状态监控。 process-compose的安装 监控所有进程 mkdir /data/process_exporter -p cd /data/process_exporter创建配置文件 …...

用ChatGPT挑选钻石!著名珠宝商推出-珠宝GPT

根据Salesforce最新发布的第五版《互联网购物报告》显示&#xff0c;ChatGPT等生成式AI的出现、快速发展&#xff0c;对零售行业和购物者产生了较大影响。可有效简化业务流程实现降本增效&#xff0c;并改善购物体验。 著名珠宝商James Allen为了积极拥抱生成式AI全面提升销售…...

啊?这也算事务?!

作者简介&#xff1a;大家好&#xff0c;我是smart哥&#xff0c;前中兴通讯、美团架构师&#xff0c;现某互联网公司CTO 联系qq&#xff1a;184480602&#xff0c;加我进群&#xff0c;大家一起学习&#xff0c;一起进步&#xff0c;一起对抗互联网寒冬 学习必须往深处挖&…...

数据通信网络基础的网络参考模型华为ICT网络赛道

网络参考模型 目录 网络参考模型 2.1.应用与数据 2.2.网络参考模型与标准协议 2.2.1.OSI参考模型 2.2.2.TCP/IP参考模型 2.2.3.应用层 2.2.4.传输层 2.2.5.TCP和UDP 2.2.6.网络层 2.2.7.数据链路层 2.2.8.物理层 2.3.数据通信过程 2.1.应用与数据 应用的存在&#…...

弱电工程计算机网络系统基础知识

我们周围无时无刻不存在一张网&#xff0c;如电话网、电报网、电视网、计算机网络等&#xff1b;即使我们身体内部也存在许许多多的网络系统&#xff0c;如神经系统、消化系统等。最为典型的代表即计算机网络&#xff0c;它是计算机技术与通信技术两个领域的结合。 计算机网络的…...

大数据与人工智能|万物皆算法(第三节)

要点一&#xff1a;数据与智能的关系 1. 一切的核心都是数据&#xff0c;数据和智能之间是密切相关的。 数据是对客观现实的描述&#xff0c;而信息是数据转化而来的。 例如&#xff0c;24是数据&#xff0c;但说“今天的气温是24摄氏度”是信息&#xff0c;而说“班可以分成24…...

[语音识别]开源语音识别faster-whisper模型下载地址

官方源码&#xff1a; https://github.com/SYSTRAN/faster-whisper 模型下载地址&#xff1a; large-v3模型&#xff1a;https://huggingface.co/Systran/faster-whisper-large-v3/tree/main large-v2模型&#xff1a;https://huggingface.co/guillaumekln/faster-whisper-l…...

JS + CSS 实现高亮关键词(不侵入DOM)

之前在做关键词检索高亮功能的时候&#xff0c;研究了下目前前端实现高亮的几种方式&#xff0c;第一就是替换dom元素实现高亮&#xff0c;第二就是利用浏览器新特性Css.highlights结合js选区与光标与CSS高亮伪类实现&#xff0c;实现功能如下&#xff1a; 一、页面布局 一个…...

Qt 中使用 MySQL 数据库保姆级教程(下)

作者&#xff1a;billy 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 前言 上篇中我们安装好了 MySQL 数据库和 Navicat 软件&#xff0c;下面在 Qt 中尝试使用数据库 1. 在 Qt 中连接 MySQL 数据库&#…...

【数据库原理】(1)数据库技术的发展

数据与信息 数据&#xff1a;数据并非只是数字&#xff0c;像文字、符号、图像、影音等都属于数据的范畴。但一般会用数字来表述客观事物的数量、质量、关系等&#xff0c;便于更加直观的看待问题。 语义&#xff1a;数据还需要结合关联的语义解释才能够清晰的描述事物&#…...

【动态规划】【字符串】C++算法:正则表达式匹配

作者推荐 视频算法专题 涉及知识点 动态规划 字符串 LeetCode10:正则表达式匹配 给你一个字符串 s 和一个字符规律 p&#xff0c;请你来实现一个支持 ‘.’ 和 ‘’ 的正则表达式匹配。 ‘.’ 匹配任意单个字符 ’ 匹配零个或多个前面的那一个元素 所谓匹配&#xff0c;是…...

fgetc_fgets_getc_getchar

一、fgetc 1、从流中读取下一个字符 下一个的意思是紧跟在指针后面的&#xff0c;对于一个刚打开文件的流&#xff0c;指针在文件的最前面&#xff0c;它的下一个字符就是文件的第一个字符。读完第一个字符后&#xff0c;指针就会走到第一个字符后面&#xff0c;这时它的下一个…...

12.30_黑马数据结构与算法笔记Java

目录 320 全排列无重复 Leetcode47 321 组合 Leetcode77 分析 322 组合 Leetcode77 实现 323 组合 Leetcode77 剪枝 324 组合之和 Leetcode 39 325 组合之和 Leetcode 40 326 组合之和 Leetcode 216 327 N皇后 Leetcode51-1 328 N皇后 Leetcode51-2 329 解数独 Leetco…...

【电路笔记】-电容分压器

电容分压器 文章目录 电容分压器1、概述2、串联电容器的电压分布3、电容分压器示例14、电容分压器示例2 分压器电路可以由电抗元件构成&#xff0c;就像由固定值电阻器构成一样容易。 1、概述 但就像电阻电路一样&#xff0c;电容分压器网络即使使用属于电抗元件的电容器&…...

线性代数基础知识

计算机视觉一些算法中常会用到线性代数的一些知识&#xff0c;为了便于理解和快速回忆&#xff0c;博主这边对常用的一些知识点做下整理&#xff0c;主要来源于如下这本书籍。 1. 矩阵不仅仅是数字排列而已&#xff0c;不然也不会有那么大精力研究它。其可以表示一种映射 关于…...

Linux Shell 016-文本比较工具diff

Linux Shell 016-文本比较工具diff 本节关键字&#xff1a;Linux、Bash Shell、文本比较 相关指令&#xff1a;diff、cat、patch diff介绍 diff工具用于逐行比较文件的不同&#xff0c;如果指定要比较目录&#xff0c;则diff会比较目录中相同文件名的文件&#xff0c;但不会…...

八股文打卡day13——计算机网络(13)

面试题&#xff1a;DNS是什么&#xff1f;DNS的查询过程是什么&#xff1f; 我的回答&#xff1a; 我来讲一下我对DNS的理解 DNS是域名系统&#xff0c;它是一个域名和IP地址相互映射的数据库。通过DNS&#xff0c;可以将我们浏览器中输入的域名&#xff0c;例如&#xff1a;…...

android studio导入module

在Android Studio中导入一个Module&#xff08;模块&#xff09;&#xff0c;可以按照以下步骤进行操作&#xff1a; 打开Android Studio&#xff0c;并打开你的项目。在菜单栏中&#xff0c;点击 "File"&#xff08;文件&#xff09;-> "New"&#xf…...

Prometheus通过consul实现自动服务发现

环境,软件准备 本次演示环境&#xff0c;我是在虚拟机上安装 Linux 系统来执行操作&#xff0c;以下是安装的软件及版本&#xff1a; System: CentOS Linux release 7.6Docker: 24.0.5Prometheus: v2.37.6Consul: 1.6.1 注意&#xff1a;这里为了方便启动 Prometheus、Consul服…...

c++11--原子操作,顺序一致性,内存模型

1.原子操作 多线程下为了实现对临界区资源的互斥访问&#xff0c;最普遍的方式是使用互斥锁保护临界区。 然而&#xff0c;如果临界区资源仅仅是数值类型时&#xff0c;对这些类型c提供了原子类型&#xff0c;通过使用原子类型可以更简洁的获得互斥保护的支持。 (1). 一个实例…...

【数据结构】栈和队列(队列的基本操作和基础知识)

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343&#x1f525; 系列专栏&#xff1a;《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 ​ 目录 前言 队列 队列的概念和结构 队列的…...

设计模式——适配器模式(Adapter Pattern)

概述 适配器模式可以将一个类的接口和另一个类的接口匹配起来&#xff0c;而无须修改原来的适配者接口和抽象目标类接口。适配器模式(Adapter Pattern)&#xff1a;将一个接口转换成客户希望的另一个接口&#xff0c;使接口不兼容的那些类可以一起工作&#xff0c;其别名为包装…...

测试C#使用OpenCvSharp从摄像头获取图片

OpenCvSharp也支持获取摄像头数据&#xff0c;不同于之前测试AForge时使用AForge控件显示摄像头数据流并从中截图图片&#xff0c;OpenCvSharp中显示摄像头数据流需要周期性地从摄像头中截取图片并显示在指定控件中。本文学习C#使用OpenCvSharp从摄像头获取图片的基本方式。  …...

【基础】【Python网络爬虫】【12.App抓包】reqable 安装与配置(附大量案例代码)(建议收藏)

Python网络爬虫基础 App抓包1. App爬虫原理2. reqable 的安装与配置reqable 安装教程reqable 的配置 3. 模拟器的安装与配置夜神模拟器的安装夜神模拟器的配置配置代理配置证书 4. 内联调试及注意事项软件启动顺开启抓包功reqable面板功列表部件功能列表数据快捷操作栏 夜神模拟…...

LabVIEW在电机噪声与振动探测的应用

LabVIEW在电机噪声与振动探测的应用 硬件部分是电机噪声和振动测试分析系统的基础&#xff0c;主要由三大核心组件构成&#xff1a;高灵敏度振动传感器、先进的信号调理电路和高性能数据采集卡。这些设备协同工作&#xff0c;确保了从电机捕获的噪声和振动信号的准确性和可靠性…...

编码器是什么,以光电编码器为例,说明一下光电编码器的名字由来,结构,原理,特点,用处

问题描述&#xff1a; 问题解答&#xff1a; 定义&#xff1a;编码器是一种测量角度、位置、速度等物理量的传感器&#xff0c;它可以将物理量转换成电信号&#xff0c;以便计算机或控制系统进行处理和控制。编码器通常由码盘和光电转换器组成&#xff0c;码盘上刻有若干条码道…...

MySQL:主从复制

准备两台服务器&#xff1a;安装好mysql mysql1&#xff1a;192.168.2.222 master mysql2&#xff1a;192.168.2.226 slave 1、主从服务器分别作以下 1.1、版本一致 1.2、初始化表&#xff0c;并在后台启动mysql 1.3、修改root的密码 2、修改主服务器master #vi /etc/my…...

滕州网站建设 助企网络/上海关键词优化按天计费

在系统开机后我们的桌面图标却不翼而飞了&#xff0c;这该怎么办&#xff1f;没有桌面图标就相当于我们进房间没有了门&#xff0c;就这样无路可走了吗&#xff1f;别慌&#xff0c;下文就给出了让你的桌面图标重现的方法。 右键单击桌面&#xff0c;排列桌面图标&#xff0c;显…...

杭州设计制作网站/沈阳网站制作

给定两个整数n 和 k,返回范围[1,n] 中所有可能的k个数的组合。你可以按任何顺序返回答案。 回溯 代码如下&#xff1a; class Solution:def combine(self, n: int, k: int):path, result [], []def backtrack(start, n, k, path):if len(path) k:result.append(path[:])retu…...

用路由器做简单的网站/产品营销策略怎么写

字符串函数是最常用的的一种函数&#xff0c;在一个具体应用中通常会综合几个甚至几类函数来实现相应的应用&#xff1a;1、LOWER(column|str)&#xff1a;将字符串参数值转换为全小写字母后返回MySQL> select lower(SQL Course);---------------------| lower(SQL Course) …...

经营性网站备案怎么备案/店铺推广渠道有哪些方式

MetersPhere自动化解决用户登录问题添加钉钉机器人 现在遇到的问题&#xff0c;做自动化的时候几乎每个接口都需要token&#xff0c;这个token是登录获取的&#xff0c;那我有很多个自动化的场景&#xff0c;如果我每一个场景都加入登录接口&#xff0c;同时执行很多场景的时候…...

单位网站建设情况说明/链交换反应

为什么80%的码农都做不了架构师&#xff1f;>>> ##1. MVC MVC是一个设计模式&#xff0c;它强制性的使应用程序的 输入、处理和输出分开。 使用MVC应用程序被分成三个核心部件&#xff1a;模型&#xff08;M&#xff09;、视图&#xff08;V&#xff09;、控制器&a…...

网站建设电话销售模版/世界排名前十位

中文官网&#xff1a;https://www.elastic.co/cn/products/logstashlogstash理念&#xff1a;数据输入》数据加工》数据输出rpm包安装即可&#xff0c;需要java依赖简单的启动测试&#xff1a;bin/logstash -e input{stdin{}}output{stdout{codec>rubydebug}}(-e 加载配置文…...