当前位置:首页 > 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等集合对象,方法内修改会影响原始集合。

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中,输入数据可以通过多种方式实现,具体取决于输入来源(如控制台、文件、网络等)。以下是几种常见的方法: 使用Scanner类从控制台输入 Scanner类是Java中最常…

java如何删除文件

java如何删除文件

删除文件的基本方法 使用 java.io.File 类的 delete() 方法可以删除文件。如果文件存在且删除成功,返回 true;否则返回 false。 import java.io…

如何选择java培训

如何选择java培训

评估培训机构资质 选择有正规资质的机构,查看其营业执照、办学许可证等。优先考虑具备人力资源和社会保障部或教育部认证的机构,这类机构的教学质量和课程设置通常更规范。 考察课程内容与行业需求匹配度…

java如何调试

java如何调试

调试Java程序的基本方法 使用IDE内置的调试工具(如IntelliJ IDEA或Eclipse)是最常见的方式。在代码行号旁点击设置断点,启动调试模式后,程序会在断点处暂停,允许查看变量值、调用栈…

java如何入门

java如何入门

学习基础语法 从Java的基础语法开始,包括变量、数据类型、运算符、控制结构(if-else、for循环、while循环)等。可以通过官方文档或入门教程学习。 安装开发环境 下载并安装JDK(J…

php 实现java md5加密

php 实现java md5加密

PHP 实现 Java MD5 加密的兼容方法 Java 和 PHP 的 MD5 加密结果可能存在差异,主要因字符编码或输出格式不同。以下是确保两者结果一致的方法: 使用 hash 函数并处理编码…