深入了解 Java 方法和参数的使用方法

Java 方法

简介

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

使用方法的原因

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

创建方法

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

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

示例解释:

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

调用方法

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

java 复制代码
public class Main {
  static void myMethod() {
    System.out.println("I just got executed!");
  }

  public static void main(String[] args) {
    myMethod();
  }
}

输出:

java 复制代码
I just got executed!

参数

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

示例:

java 复制代码
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");
  }
}

输出:

java 复制代码
Hello, John Doe!
Hello, Jane Doe!

返回值

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

示例:

java 复制代码
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);
  }
}

输出:

java 复制代码
The sum is: 15

总结

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

Java 方法参数

参数和实参

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

语法:

java 复制代码
methodName(parameter1, parameter2, ...);

示例:

java 复制代码
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");
  }
}

输出:

java 复制代码
Liam Refsnes
Jenny Refsnes
Anja Refsnes

解释:

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

多个参数

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

语法:

java 复制代码
methodName(parameter1, parameter2, ..., parameterN);

示例:

java 复制代码
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);
  }
}

输出:

java 复制代码
Liam is 5
Jenny is 8
Anja is 31

解释:

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

返回值

方法可以返回一个值。

语法:

java 复制代码
returnType methodName(parameter1, parameter2, ..., parameterN) {
  // 方法体
  return value;
}

示例:

java 复制代码
public class Main {
  static int myMethod(int x) {
    return 5 + x;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(3));
  }
}

输出:

java 复制代码
8

解释:

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

带有 If...Else 的方法

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

示例:

java 复制代码
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
  }
}

输出:

java 复制代码
Access granted - You are old enough!

解释:

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

总结

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

最后

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

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

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

相关推荐
毕设源码-邱学长4 小时前
【开题答辩全过程】以 基于Java的学校住宿管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
兑生6 小时前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
daidaidaiyu6 小时前
一文学习 Spring 声明式事务源码全流程总结
java·spring
颜酱6 小时前
DFS 岛屿系列题全解析
javascript·后端·算法
发现一只大呆瓜7 小时前
React-彻底搞懂 Redux:从单向数据流到 useReducer 的终极抉择
前端·react.js·面试
零雲7 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
小码哥_常7 小时前
Java后端定时任务抉择:@Scheduled、Quartz、XXL - Job终极对决
后端
uzong7 小时前
Skill 被广泛应用,到底什么是 Skill,今天详细介绍一下
人工智能·后端·面试
小码哥_常8 小时前
Kafka平替!SpringBoot+Redis Stream+消费组打造极致消息队列
后端
发现一只大呆瓜8 小时前
React-路由监听 / 跳转 / 守卫全攻略(附实战代码)
前端·react.js·面试