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. 06-Redis系列之-哨兵(Redis-Sentinel)和集群详解和搭建

    主从架构高可用 主从架构存在的问题 主从复制,主节点发生故障,需要做故障转移.(可以手动转移:让其中一个slave变成master) 主从复制,只有主写数据,所以写能力和存储能力有限 总结:redis ...

  2. 【LeetCode二叉树#08】寻找树左下角的值(回溯机制X深度)

    找树左下角的值 力扣题目链接(opens new window) 给定一个二叉树,在树的最后一行找到最左边的值. 示例 1: 示例 2: 思路 层序遍历 这个是很自然的思路,因为层序遍历可以避免对于& ...

  3. 【LeetCode栈与队列#04】逆波兰表达式求值(仍然是经典的栈操作)

    逆波兰表达式求值 力扣题目链接(opens new window) 根据 逆波兰表示法,求表达式的值. 有效的运算符包括 + , - , * , / .每个运算对象可以是整数,也可以是另一个逆波兰表达 ...

  4. 【Azure Redis 缓存】Redisson 连接 Azure Redis出现间歇性 java.net.UnknownHostException 异常

    问题描述 在Java项目中,使用Redisson作为连接Redis的客户端,间歇性的出现了DNS Monitor throwable 错误. DNSMonitor throwable="ja ...

  5. 浅析图数据库 Nebula Graph 数据导入工具——Spark Writer

    从 Hadoop 说起 近年来随着大数据的兴起,分布式计算引擎层出不穷.Hadoop 是 Apache 开源组织的一个分布式计算开源框架,在很多大型网站上都已经得到了应用.Hadoop 的设计核心思想 ...

  6. linux用户权限相关命令笔记

    1,用户 和 权限 的基本概念 1.1 ls 扩展 ls -l 1.2 chmod 简单使用(重要) + 是加权限, - 是减权限 chmod 修改文件权限 chmod 修改目录权限: 想要在目录下执 ...

  7. 记一次dockerfile无法构建问题追溯

    我有一个dockerfile如下: ENTRYPOINT ["/sbin/tini","-g", "--"] CMD /home/scrap ...

  8. 青少年CTF训练平台-web部分随笔

    文章管理系统 首先打开环境(>ω<。人)ZZz♪♪ 既然要做题,就要做全面了,图上说了,既然有假flag我就先找出来: 假flag: 打开vmware,使用sqlmap进行处理: sqlm ...

  9. Docker下搭建MySql主从复制

    在Docker环境下搭建MySql主从复制,阅读此文章默认读者具备基础的Docker命令操作. 一.环境 1.Docker版本:Docker version 24.0.5, build ced0996 ...

  10. 基于Linux的DockerFile添加中文字体

    FROM openjdk:8u332-oraclelinux7 #RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk ...