欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java 值傳遞和地址傳遞

錢淋西1年前8瀏覽0評論

Java中的方法參數傳遞方式有兩種:值傳遞和地址傳遞。值傳遞指的是將方法外的變量賦值給方法內的參數,只是將變量值復制給參數,方法內對參數的操作不會對原變量產生影響。地址傳遞就是將方法外的變量地址傳遞給方法內的參數,參數得到原變量的地址后,可以直接修改原變量的值。

// 值傳遞示例
public class ValuePassing {
public static void main(String[] args) {
int num1 = 10;
int num2 = 20;
swap(num1, num2);
System.out.println(num1); // 輸出 10
System.out.println(num2); // 輸出 20
}
public static void swap(int a, int b) {
int temp = a;
a = b;
b = temp;
}
}
// 地址傳遞示例
public class ReferencePassing {
public static void main(String[] args) {
int[] arr = {1, 2, 3};
processData(arr);
for (int i = 0; i< arr.length; i++) {
System.out.print(arr[i] + " "); // 輸出 4 5 6
}
}
public static void processData(int[] arr) {
for (int i = 0; i< arr.length; i++) {
arr[i] += 3;
}
}
}

以上代碼中,值傳遞示例中的swap方法并未改變num1和num2的值,因為方法內對a和b的操作只是改變了它們的值,而并沒有影響到外部變量。地址傳遞示例中的processData方法通過arr參數直接修改了外部變量arr中的值,這是因為數組在Java中是引用類型,它的數組變量存儲的是數組的地址。