当前位置:首页 > Java

java如何传参

2026-03-04 04:06:58Java

方法一:基本数据类型传参

基本数据类型(如intdouble等)通过值传递,方法内修改不影响原始值。

void modifyValue(int x) {
    x = 10; // 修改不影响外部变量
}
int num = 5;
modifyValue(num);
System.out.println(num); // 输出 5

方法二:对象引用传参

对象通过引用传递,方法内修改对象属性会影响原始对象。

class Person {
    String name;
    Person(String name) { this.name = name; }
}
void modifyObject(Person p) {
    p.name = "Alice"; // 修改影响原始对象
}
Person person = new Person("Bob");
modifyObject(person);
System.out.println(person.name); // 输出 "Alice"

方法三:数组传参

数组作为对象传递,方法内修改数组内容会影响原始数组。

void modifyArray(int[] arr) {
    arr[0] = 100; // 修改影响原始数组
}
int[] nums = {1, 2, 3};
modifyArray(nums);
System.out.println(nums[0]); // 输出 100

方法四:可变参数(Varargs)

使用...语法传递可变数量的参数,底层为数组。

void printValues(String... values) {
    for (String v : values) {
        System.out.println(v);
    }
}
printValues("A", "B", "C"); // 可传递任意数量参数

方法五:使用final限制参数

final修饰的参数不可被重新赋值,但对象属性仍可修改。

void processFinal(final int x, final Person p) {
    // x = 20; // 编译错误,final变量不可修改
    p.name = "Charlie"; // 允许修改对象属性
}

方法六:通过集合类传参

传递ListMap等集合对象,方法内修改会影响原始集合。

java如何传参

void updateList(List<String> list) {
    list.add("New Item");
}
List<String> items = new ArrayList<>();
updateList(items);
System.out.println(items); // 输出 [New Item]

标签: java
分享给朋友:

相关文章

java如何使用

java如何使用

Java 基本使用方法 Java 是一种广泛使用的编程语言,适用于开发各种类型的应用程序。以下是 Java 的基本使用方法,包括环境配置、语法基础和常用操作。 安装 Java 开发环境 下载并安装…

java如何编程

java如何编程

Java编程基础 Java是一种面向对象的编程语言,广泛应用于企业级开发、移动应用(Android)等领域。以下是Java编程的核心步骤和示例。 环境搭建 安装JDK 从Oracle官网下载适合…

如何配置java环境

如何配置java环境

下载JDK安装包 访问Oracle官网或OpenJDK官网,选择适合操作系统的JDK版本(如Windows、macOS或Linux)。下载完成后,运行安装程序并按照提示完成安装。 设置环境变量 右键…

如何编译java文件

如何编译java文件

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证。若未安装,需从Oracle或Open…

如何配置java环境变量

如何配置java环境变量

下载并安装JDK 从Oracle官网或OpenJDK项目下载适合操作系统的JDK安装包。运行安装程序,按照提示完成安装,默认路径通常为C:\Program Files\Java\jdk-版本号。 配…

java如何连接数据库

java如何连接数据库

Java连接数据库的方法 Java连接数据库通常使用JDBC(Java Database Connectivity)技术,以下是具体步骤和示例代码。 加载数据库驱动 在连接数据库之前,需要加载对应的…