java中数组是引用类型吗
时间: 2024-09-07 22:03:10 浏览: 38
java 中数组初始化实例详解
是的,Java中的数组确实是引用类型[^1]。这意味着当你声明一个数组并将其赋值给一个变量时,你实际上是创建了一个指向数组起始位置的引用。即使你在函数内部改变了数组的内容,外部的引用也会看到这些变化,因为它们实际上是指向同一块内存区域。
以下面这个例子来说明这一点:
```java
public class Main {
public static void main(String[] args) {
String[] array = {"Hello", "World"}; // 创建一个字符串数组
func(array); // 传递数组给函数
System.out.println(Arrays.toString(array)); // 输出原始数组
}
public static void func(Object[] arr) { // 使用Object类型接收,以便包括数组
arr[0] = "Modified"; // 修改数组的第一个元素
}
}
```
执行这段代码,你会发现`main`方法中的`array`也已经被修改了,因为`func`中的操作影响到了原始数组的引用[^2]。
阅读全文