Java 方法

简介

方法是一块仅在调用时运行的代码。您可以将数据(称为参数)传递到方法中。方法用于执行特定的操作,它们也被称为函数。

使用方法的原因

  • 重用代码:定义一次代码,多次使用。
  • 提高代码的结构化和可读性。
  • 将代码分解成更小的模块,易于维护和理解。

创建方法

方法必须在类内声明。它的定义包括方法的名称,后跟括号()。Java提供了一些预定义方法,如 System.out.println(),但您也可以创建自己的方法来执行特定的操作:

public class Main {
static void myMethod() {
// 要执行的代码
}
}

示例解释:

  • myMethod() 是方法的名称。
  • static 表示该方法属于 Main 类而不是 Main 类的对象。
  • void 表示此方法没有返回值。

调用方法

要在Java中调用一个方法,写出方法的名称,后跟两个括号()和一个分号;

public class Main {
static void myMethod() {
System.out.println("I just got executed!");
} public static void main(String[] args) {
myMethod();
}
}

输出:

I just got executed!

参数

方法可以接受参数,参数就像占位符,允许您在调用方法时传递不同的值。

示例:

public class Main {
static void myMethod(String name) {
System.out.println("Hello, " + name + "!");
} public static void main(String[] args) {
myMethod("John Doe");
myMethod("Jane Doe");
}
}

输出:

Hello, John Doe!
Hello, Jane Doe!

返回值

方法可以返回一个值,返回值类型可以是任何Java数据类型,包括 intdoubleString 等。

示例:

public class Main {
static int myMethod(int x, int y) {
return x + y;
} public static void main(String[] args) {
int sum = myMethod(5, 10);
System.out.println("The sum is: " + sum);
}
}

输出:

The sum is: 15

总结

方法是Java编程中一个重要的概念,它们允许您重用代码,提高代码的结构化和可读性,并将其分解成更小的模块。

Java 方法参数

参数和实参

信息可以作为参数传递给方法。参数在方法内部充当变量。

语法:

methodName(parameter1, parameter2, ...);

示例:

public class Main {
static void myMethod(String fname) {
System.out.println(fname + " Refsnes");
} public static void main(String[] args) {
myMethod("Liam");
myMethod("Jenny");
myMethod("Anja");
}
}

输出:

Liam Refsnes
Jenny Refsnes
Anja Refsnes

解释:

  • myMethod 方法有一个参数:fname,类型为 String
  • main 方法中,我们调用了 myMethod 方法三次,每次都传递了一个不同的字符串作为实参。
  • 方法内部,我们使用 System.out.println 语句将参数值打印到控制台。

多个参数

可以向方法传递任意数量的参数。

语法:

methodName(parameter1, parameter2, ..., parameterN);

示例:

public class Main {
static void myMethod(String fname, int age) {
System.out.println(fname + " is " + age);
} public static void main(String[] args) {
myMethod("Liam", 5);
myMethod("Jenny", 8);
myMethod("Anja", 31);
}
}

输出:

Liam is 5
Jenny is 8
Anja is 31

解释:

  • myMethod 方法有两个参数:fname (类型为 String) 和 age (类型为 int)。
  • main 方法中,我们调用了 myMethod 方法三次,每次都传递了两个实参。
  • 方法内部,我们使用 System.out.println 语句将参数值打印到控制台。

返回值

方法可以返回一个值。

语法:

returnType methodName(parameter1, parameter2, ..., parameterN) {
// 方法体
return value;
}

示例:

public class Main {
static int myMethod(int x) {
return 5 + x;
} public static void main(String[] args) {
System.out.println(myMethod(3));
}
}

输出:

8

解释:

  • myMethod 方法返回一个 int 类型的返回值。
  • 方法内部,我们使用 return 关键字返回了 5 + x 的值。
  • main 方法中,我们调用了 myMethod 方法并将其返回值打印到控制台。

带有 If...Else 的方法

方法内部可以使用 if...else 语句。

示例:

public class Main {

  // 创建一个带有整数变量 age 的 checkAge() 方法
static void checkAge(int age) { // 如果 age 小于 18,则打印“拒绝访问”
if (age < 18) {
System.out.println("Access denied - You are not old enough!"); // 如果 age 大于等于 18,则打印“允许访问”
} else {
System.out.println("Access granted - You are old enough!");
} } public static void main(String[] args) {
checkAge(20); // 调用 checkAge 方法并传递年龄为 20
}
}

输出:

Access granted - You are old enough!

解释:

  • checkAge方法有一个参数:age,类型为int
  • 方法内部,我们使用if语句检查age的值。
  • 如果age小于18,则打印“拒绝访问”。
  • 如果age大于等于18,则打印“允许访问”。

总结

  • 方法参数用于将信息传递给方法。
  • 可以向方法传递任意数量的参数。
  • 方法可以返回一个值。
  • 方法内部可以使用if...else语句。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

深入了解 Java 方法和参数的使用方法的更多相关文章

  1. moviepy音视频剪辑VideoClip类set_position方法pos参数的使用方法及作用

    ☞ ░ 前往老猿Python博文目录 ░ moviepy音视频剪辑VideoClip类set_position方法用于多个剪辑合成一个剪辑时设置调用剪辑实例的拷贝在合成剪辑的位置. 调用语法: set ...

  2. Object类的wait方法带参数和notifyAll方法

    相当于sleep( 5000 ) , 效果一样:

  3. C#方法中参数ref和out的解析

    一.C#方法中参数类型 有4种参数类型,有时候很难记住它们的不同特征,下图对它们做一个总结,使之更容易比较和对照. 二.C#方法中的参数 1.值参数 使用值参数,通过复制实参的值到形参的方式把数据传递 ...

  4. C#开发Unity游戏教程之Unity中方法的参数

    C#开发Unity游戏教程之Unity中方法的参数 Unity的方法的参数 出现在脚本中的方法,无论是在定义的时候,还是使用的时候,后面都跟着一对括号“( )”,有意义吗?看起来最多也就是起个快速识别 ...

  5. PHP中使用RabiitMQ---各项参数的使用方法

    RabbitMQ在PHP使用,我在这里对RabbitMQ的各项方法和参数进行了一些梳理,有不足的地方还望各位大神指点. 想要使用rabbitMQ消息队列,首先需要安装 php_amqp.dll 扩展 ...

  6. Java:方法的参数是传值还是传引用

    Java中方法的参数总是采用传值的方式. 下列方法欲实现对象的交换,但实际上是不能实现的. public void swap(simpleClass a,simpleClass b){ simpleC ...

  7. Java可变长参数方法调用问题

    不说废话,直接上代码: package mytest; import java.util.List; public class TestClass { public void method(List& ...

  8. 巩固java(六)----java中可变参数方法(非常实用哦)

    java提供了可变参数的方法,即方法的参数个数可以不确定,用"..."定义. import java.util.ArrayList; import java.util.List; ...

  9. java(11)带参数的方法

    一.java中的包(package) 1.1 包,对应到磁盘中的文件夹 1.2 新建一个class,默认保存在缺省包中 1.3 声明包的关键字:package package语句,置顶位置 1.4 导 ...

  10. Java方法的参数传递方式为: 值传递

    Java方法的参数传递方式为: 值传递 对于基本数据类型作为参数传递时, 是"按值传递", 这点都认识很清楚. 但是, 当对象或者说引用作为参数传递, Java 的参数传递方式是& ...

随机推荐

  1. 初始pyqt5

    开发pyqt5桌面应用 必须使用两个类:QApplication和QWidget.都在PyQt5.QtWidgets中 安装 pip install pyqt5 -i https://pypi.dou ...

  2. 【LeetCode二叉树#07】左叶子节点之和(基于栈的迭代法前中后序遍历复习)

    左叶子节点之和 力扣题目链接(opens new window) 计算给定二叉树的所有左叶子之和. 示例: 思路 注意审题,这里是要求 左叶子节点 之和 不是二叉树中的左侧节点之和,因此使用层序遍历是 ...

  3. 全表查询sql执行链路排查

    问题描述: 发现有sql查询全表数据,慢查询语句,根据druid上的sql监控查看到. 主要根据标红的列确定问题sql. 点击进去可以看到详细sql信息. 问题排查目标: 发现这个语句高层调用方特别多 ...

  4. 2023 Gartner RPA魔力象限报告解读:国产厂商“破纪录”跃升意味着什么?

    2023 Gartner RPA魔力象限报告解读:象限跃升彰显国产RPA厂商实力 2023 Gartner RPA魔力象限报告四大行业趋势,国产RPA厂商已在践行 文/王吉伟 8月3日,全球著名咨询调 ...

  5. Go语言VSCode开发环境配置

    最近学习Golang,先把开发环境配置好. 一.安装Go语言开发包 https://golang.google.cn/dl/ 按步骤安装即可,安装完成后需要设置Windows环境变量 配置好,做个测试 ...

  6. PostgreSql一个月学习计划

    1.背景 国内使用数据库最多的莫过于mysql,大部分程序员第一次接触数据库就是mysql.(毕竟免费的 = =!)但近年来,有一些黑马出现(如下图),其中表现最突出的莫过于PostgreSQL.特规 ...

  7. [.Net]使用Soa库+Abp搭建微服务项目框架(二):面向服务体系的介绍

    ​ 上一章我们建立了一个典型的面向领域设计的Abp小项目,如果按照常规的开发方式,会遇到什么问题呢? 先来完善一下这个小项目,在定义好各实体类后,运行Miguration并向数据库里写入一些初始数据. ...

  8. electron vite2 vue3 安装 cvep my-electron-cvep

    npm config set registry=https://registry.npm.taobao.org/ npm config set ELECTRON_MIRROR=http://npm.t ...

  9. Ambiq Micro-AMA3B2KK-KBR芯片可穿戴产品解决方案开发之基于Freertos系统的按键和LED控制

    一 前记 freetos在可穿戴设备上应用十分广泛,用来实现基本的按键和led控制,来熟悉它的基本架构.这是一个不错的尝试. 二 源码分析 1 系统初始化 这个启动task,相当于系统的入口函数,这里 ...

  10. 编译OpenWRT-for-MT7620A(带8021x验证)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...