JAVA中方法参数传递问题

  心得:以前通过练习知道,基本数据类型通过方法参数传值不接收返回值,是不会改变的,引用类型通过方法参数传值,进行修改是会改变的.但是不知道真正原理,今天学习了内存存储,结合以前学习的内存存储,恍然大悟,原理上图,还是要打好基础知识,厚积薄发。
 1 /*
 2 基本类型的值传递
 3 */
 4 public class MethodDemo{
 5 //不同方法内存不共享
 6   public static void main(String[] args) {
 7     int i = 10;
 8     swap(i);
 9     System.out.println(i);//10
10   }
11   public static int swap(int i){
12     System.out.println(i);//10
13     i = 20;
14     System.out.println(i);//20
15     return i;
16   }
17 }
/*
引用数据类型的值传递
*/
public class MethodDemo2{
  public static void main(String[] args) {
    int[] array = {3,4};
    swap(array);
    System.out.println(array[0]+"---"+array[1]);//4 3
  }
// 交换两个变量的位置
  public static int[] swap(int[] array){
    int temp = array[0];
    array[0] = array[1];
    array[1] = temp;
    System.out.println(array[0]+"---"+array[1]);//4 3
    return array;
    }
  }
 
原文地址:https://www.cnblogs.com/zou-zou/p/8608455.html