当前位置:首页 > Java

java如何传实参

2026-03-22 17:13:48Java

传递实参的基本方式

在Java中,实参(实际参数)通过方法调用传递给形参(形式参数)。传递方式取决于参数的类型:基本数据类型(如int、double等)或引用类型(如对象、数组)。

基本数据类型通过值传递(pass by value),传递的是变量的副本,方法内对参数的修改不会影响原始变量。引用类型通过引用值传递(pass by reference value),传递的是对象引用的副本,方法内对对象属性的修改会影响原始对象,但重新赋值引用不会影响原始引用。

基本数据类型传参示例

public class Main {
    public static void modifyValue(int value) {
        value = 100; // 修改不影响原始变量
    }

    public static void main(String[] args) {
        int num = 50;
        modifyValue(num);
        System.out.println(num); // 输出50
    }
}

引用类型传参示例

public class Main {
    public static void modifyArray(int[] arr) {
        arr[0] = 100; // 修改会影响原始数组
    }

    public static void main(String[] args) {
        int[] array = {50};
        modifyArray(array);
        System.out.println(array[0]); // 输出100
    }
}

可变参数(Varargs)

Java支持可变参数,允许方法接受不定数量的参数。可变参数本质上是一个数组。

public class Main {
    public static void printNumbers(int... numbers) {
        for (int num : numbers) {
            System.out.println(num);
        }
    }

    public static void main(String[] args) {
        printNumbers(1, 2, 3); // 输出1 2 3
    }
}

方法重载与参数传递

Java支持方法重载,即多个方法同名但参数列表不同(类型、数量或顺序)。调用时根据实参类型匹配最合适的方法。

java如何传实参

public class Main {
    public static void print(int num) {
        System.out.println("int: " + num);
    }

    public static void print(String str) {
        System.out.println("String: " + str);
    }

    public static void main(String[] args) {
        print(10); // 调用print(int)
        print("Hello"); // 调用print(String)
    }
}

参数传递的注意事项

  • 基本数据类型传递的是值的副本,方法内修改不影响原始变量。
  • 引用类型传递的是引用的副本,方法内修改对象属性会影响原始对象,但重新赋值引用不会影响原始引用。
  • 可变参数提供灵活性,但一个方法只能有一个可变参数,且必须是最后一个参数。

标签: java传实参
分享给朋友:

相关文章

如何打开java

如何打开java

打开 Java 程序的方法 通过命令行运行 Java 程序 确保已安装 Java Development Kit (JDK) 并配置环境变量。使用 javac 编译 .java 文件,生成 .clas…

如何编写java程序

如何编写java程序

安装开发环境 下载并安装JDK(Java Development Kit),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH正确设置。 选…

java如何解决高并发

java如何解决高并发

Java 高并发解决方案 使用线程池优化资源管理 线程池(如 ThreadPoolExecutor)能避免频繁创建和销毁线程的开销。通过核心线程数、最大线程数和任务队列的合理配置,可以平衡系统负载。例…

java如何编写接口

java如何编写接口

编写Java接口的基本语法 在Java中,接口通过interface关键字定义,可以包含抽象方法、默认方法、静态方法和常量。 public interface MyInterface {…

java程序如何打包

java程序如何打包

打包Java程序的方法 使用JAR打包 Java程序可以通过JAR(Java Archive)格式打包,这是一种常见的压缩格式,适用于包含多个类文件和资源的项目。以下是使用JAR打包的步骤: 确保项…

java如何返回数组

java如何返回数组

返回数组的方法 在Java中,可以通过多种方式返回数组。以下是几种常见的方法: 直接返回数组 定义一个方法,返回类型为数组类型,直接在方法内部创建并返回数组。 public int[] getI…