Java中的方法的基本使用

文章目录

  • 前言
  • 1.什么是方法
  • 2.方法如何定义
  • 3.方法的常见问题
  • 4.练习案例
    • 4.1 案例1 计算1到n的和
    • 4.2 案例2 判断奇偶数

前言

我是一名来自延边大学人工智能专业的热爱街舞的大四学生,目前在学习Java,我会根据我的学习路线给大家分享学习经验,这章我们学习Java中的很重要的一个内容 方法


1.什么是方法

方法是一种语法结构,它可以把一段代码封装成一个功能,以便重用。

方法的定义格式:修饰符 返回值类型 方法名 (形参列表){方法体代码return 返回值
}

当我们需要重复使用同一段代码时,把这段代码用方法封装起来使用是非常合适的,看如下案例

int a = 10;
int b = 20;
int c = a+b;
System.out.println("和是:" + c);int a1 = 10;
int b1 = 20;
int c1 = a1+b1;
System.out.println("和是:" + c1);

可以看出这两段代码作用的都是一样的,目的是为了求两个整形的和,就可以用方法进行封装

public class MethodDemo1 {public static void main(String[] args) {int rs = sum(10, 20);System.out.println("和是:" + rs);int rs2 = sum(30, 20);System.out.println("和是:" + rs2);}public static int sum(int a,int b) {int c = a + b;return c;}
}

如果这样的重复操作需要做更多次的话,封装成方法就大大减少了代码的数量,非常方便

上方案例的执行顺序是:

① 通过sum方法名找到sum方法

​ ② 把10传递给方法中的参数a

​ ③ 把20传递给方法中的参数b;

​ ④ 执行方法中的代码,此时int c=a+b;; 相当于 int c = 10+20; c的值为30

return c 的含义是,把c的结果返回给调用处。 也就是调用sum方法的结果为30,使用了int类型的rs来接收

注意事项:

  1. 方法申明了具体的返回值类型,内部必须使用return返回对应类型的数据。
  2. 形参列表可以有多个,甚至可以没有; 如果有多个形参,多个形参必须用“,”隔开,且不能给初始化值。

使用方法的好处是:

  1. 提高了代码的复用性,提高了开发效率。
  2. 让程序的逻辑更清晰。

2.方法如何定义

根据是否有返回值可以把方法分成两种,第一种是无返回值方法,一种是有返回值方法
根据是否使用参数可以也可以把方法分成两种,第一种是有参方法,一种是无参方法

  • 如果方法不需要返回数据,返回值类型必须申明成void(无返回值申明), 此时方法内部不可以使用return返回数据。
  • 方法如果不需要接收外部传递进来的数据,则不需要定义形参,且调用方法时也不可以传数据给方法。
  • 没有参数,且没有返回值类型(void)的方法,称为值无参数、无返回值方法。此时调用方法时不能传递数据给方法。

例如:
1.要求写一个方法,在控制台打印3个“Java”.
2.写一个方法,控制台打印若干个"Java",具体多少个,有调用者指定

第一题就不需要参数 因为给定了需要打印3个
第二题就需要给定参数,来终止需要打印多少行

3.方法的常见问题

  1. 方法在内种没有先后顺序,但是不能把一个方法定义在另一个方法中。

  2. 方法的返回值类型写void(无返回申明)时,方法内不能使用return返回数据,
    如果方法的返回值类型写了具体类型,方法内部则必须使用return返回对应类型的数据。

  3. return语句的下面,不能编写代码,属于无效的代码,执行不到这儿。

  4. 方法不调用就不会执行, 调用方法时,传给方法的数据,必须严格匹配方法的参数情况。

  5. 调用有返回值的方法,有3种方式:
    ① 可以定义变量接收结果
    ② 或者直接输出调用,
    ③ 甚至直接调用;

  6. 调用无返回值的方法,只有1种方式: 只能直接调用。

4.练习案例

判断如何定义一个方法,通常需要考虑两点

  1. 是否需要返回值
  2. 是否使用参数,如何定义参数列表

可以通过一下案例进行练习

4.1 案例1 计算1到n的和

分析:
需要求1~n的和,由于n不确定是多少,所以就把n写成形式参数,n的具体值由调用者指定。
在方法中把n当做一个确定的数据来使用就行。

定义方法
public static int add(int n){int sum = 0;for (int i = 1; i <= n; i++) {// i = 1 2 3 ... nsum += i;}return sum;
}
调用方法
public static void main(String[] args) {int rs = add(5);System.out.println("1-5的和是:" + rs); //15int rs = add(6);System.out.println("1-6的和是:" + rs); //21
}

4.2 案例2 判断奇偶数

分析:
需求中,是要判断一个数是奇数还是偶数,但是并没有明确说,是哪一个数。
也就是说这个数可能是奇数,也可以能是偶数,是一个能够变化的数。
把这个数写成方法的形式参数,就可以达到这个目的。因为调用方法时,调用者可以给传递 奇数,也可以传递偶数。

定义方法
public static void judge(int number){if(number % 2 == 0){System.out.println(number + "是一个偶数!");}else {System.out.println(number + "是一个奇数!");}
}
调用方法
public static void main(String[] args) {judge(3); //调用后打印:3是一个奇数judge(4); //调用后打印:4是一个偶数
}

今天和大家简单介绍了一下方法的基本使用,后续会继续讲解方法中的重点

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

加入GitHub Spark需要申请

目录 加入GitHub Spark需要申请 GitHub Spark 一、产品定位与特点 二、核心组件与功能 三、支持的AI模型 四、应用场景与示例 五、未来展望 六、申请体验 加入GitHub Spark需要申请 GitHub Spark 是微软旗下GitHub在2024年10月30日的GitHub Universe大会上推出的一款革…

鸿蒙与团结引擎c#与ts简单交互

目录 团结中调用ts代码 鸿蒙中调用团结代码 首先在团结创建代码&#xff0c;需要将代码添加到场景物体中 devecoStudio端编写ts代码 在index页面添加一个测试按钮 团结中调用ts代码 团结引擎 - 手册: Call TypeScript plug-in code from C# scripts 注册函数要跟文件名一致 在u…

Qt QCustomplot 在采集信号领域的应用

文章目录 一、常用的几种开源库:1、QCustomPlot:2、QChart:3、Qwt:QCustomplot 在采集信号领域的应用1、应用实例时域分析频谱分析2.数据筛选和处理其他参考自然界中的物理过程、传感器和传感器网络、电路和电子设备、通信系统等都是模拟信号的来源。通过可视化模拟信号,可以…

世优科技携手人民中科打造AI数字人智能体助力智慧校园

近日&#xff0c;世优科技与人民中科携手&#xff0c;为中国劳动关系学院开发了一款AI数字人助手&#xff0c;不仅在校园内部承担日常问询、交互工作&#xff0c;还在学校的展厅中担任讲解员的角色&#xff0c;为师生们提供生动详尽的导览服务。 中国劳动关系学院作为中华全国总…

7.2、实验二:被动接口和单播更新

源文件链接&#xff1a; 7.2、实验二&#xff1a;被动接口和单播更新: https://url02.ctfile.com/d/61945102-63671890-6af6ec?p2707 (访问密码: 2707) 一、被动接口 1.介绍 定义: 在路由协议的配置中&#xff0c;一个被动接口指的是一个接口不发送路由更新包的配置方式&a…

达梦8-达梦数据实时同步软件(DMHS)配置-Oracle-DM8

1、安装环境 源端目的端IP地址192.168.6.111192.168.6.110系统版本Red Hat 6.4Kylin v10数据库版本Oracle11g达梦 v8系统用户Oracledmdba字符集MERICAN_AMERICA.AL32UTF8UTF-8端口15215236实例名PRODDMSERVER数据库软件目录/u01/app/oracle/opt/dmdbmsDMHS安装目录/u01/dmhs/o…

多个NVR同时管理EasyNVR多品牌NVR管理工具/设备:IP常见问题解决方案

随着视频监控技术的不断发展&#xff0c;NVR&#xff08;网络视频录像机&#xff09;已经成为现代安防系统的重要组成部分。而为了更高效地管理多个品牌的NVR设备&#xff0c;EasyNVR这一多品牌NVR管理工具应运而生。然而&#xff0c;在实际使用过程中&#xff0c;尤其是在多个…

新160个crackme - 094-TheBigMan-crackme6

运行分析 需破解Name和Serial PE分析 LCC win32程序&#xff0c;32位&#xff0c;无壳 静态分析&动态调试 ida搜索字符串&#xff0c;进入关键函数 ida动调&#xff0c;发现关键判断函数func_1 进入后&#xff0c;发现Name长度需满足一定要求&#xff0c;且func_2返回值不能…

软考系统分析师知识点三七:今日考试

前言 今年报考了11月份的软考高级&#xff1a;系统分析师。 考试时间&#xff1a;11月9日。 今日考试。 今日考试 上午&#xff1a;选择题、案例题&#xff0c;注意记一下选择题和案例题中出现的知识点。 中午&#xff1a;再次整理强记一下论文框架、论文知识点 下午&…

u8g2操作流程和相关问题总结

1、下载官方源码实例 GitHub - olikraus/u8g2: U8glib library for monochrome displays, version 2 2、将目录中的csrc拷贝到工程文件夹里 3、裁剪代码 将u8x8_d_XXX.c 的文件,是自己硬件的保留,其他的都可以删掉。 4、裁剪文件的代码

Github 2024-11-05 Python开源项目日报Top10

根据Github Trendings的统计,今日(2024-11-05统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目10HTML项目1TypeScript项目1系统设计指南 创建周期:2507 天开发语言:Python协议类型:OtherStar数量:241693 个Fork数量:42010 次…

Oracle视频基础1.4.4练习

1.4.4 [dbs] 删干净上次创建的bbk ll rm -f *dbf ll rm -f spfilebbk.ora clear ll创建bbk的pfile&#xff0c;准备对应的目录 ll strings spfilewilson.ora | more strings spfilewilson.ora > initbbk.ora :%s/wilson/bbk :%s/*\.//g :wq ll vi initbbk.ora####### 创…

跨境电商独立站怎么建?如何收款?

独立站是相对于平台电商以及近年迅猛发展的社交电商而言的。 平台站就是在亚马逊、Lazada、速卖通、Temu等电商平台上开设店铺的站点&#xff0c;社交电商则是依托社交媒体的流量衍生的电商平台&#xff0c;TikTok Shop便是典型代表。 一、什么是独立站 独立站&#xff0c;简…

毕设 深度学习遮挡下的人脸识别(源码+论文)

文章目录 0 前言1 项目运行效果2 设计概要4 最后 0 前言 &#x1f525;这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师…

Charles简单压力测试

1.接口请求次数&#xff0c;并发量&#xff0c;请求延迟时间均可配置 1.1选中需要进行测试的接口&#xff0c;鼠标右键选中【repeat advance】 2.设置并发参数 下面的图中&#xff0c;选择了1个接口&#xff0c;每次迭代中1个接口同时请求&#xff0c;迭代1000次&#xff08;…

UE5.4 PCG 获取地形Layer

使用AttributeFilter&#xff1a;属性过滤器 节点 设置地形Layer名称和权重 效果&#xff1a;

isc-dhcp-server

#dhcps #安装 apt install isc-dhcp-server #topo # 创建命名空间 ip netns add ns #创建veth接口 ip link add ns-veth0 type veth peer name h-veth0 #ns-veth0放入命名空间 ip link set ns-veth0 netns ns #配置ns的接口 ip -netns ns link set ns-veth0 up ip -netns ns …

网络安全技术及其在企业中的应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 网络安全技术及其在企业中的应用 网络安全技术及其在企业中的应用 网络安全技术及其在企业中的应用 引言 网络安全技术概述 定义…

《深度学习神经网络:颠覆生活的魔法科技与未来发展新航向》

深度学习神经网络对我们生活的影响 一、医疗领域 深度学习神经网络在医疗领域的应用可谓意义重大。在疾病诊断方面&#xff0c;它能够精准分析医疗影像&#xff0c;如通过对大量的 CT、MRI 图像进行深度学习&#xff0c;快速准确地识别出微小的肿瘤病变&#xff0c;为医生提供…

【综合案例】使用React编写B站评论案例

一、效果展示 默认效果&#xff0c;一开始默认按照最热进行排序 发布了一条评论 按照最新进行排序 按照最新进行排序 二、效果说明 页面上默认有3条评论&#xff0c;且一开始进入页面的时候是按照点赞数量进行倒序排列展示&#xff0c;可以点击【最热 、最新】进行排序的切换。…