上一次我们分析java参数过程中,当传递的是基本类型和对象引用的情况.那么当传递的参数是数组呢,情况又会怎么样?
其实,数组是当成一个引用类型来传递的,轻看下面的例子!
/**
*
*/
package arguments.transport;
/**
* test the parameter transfer via array or object reference
*
* @author Bruce
* @date Sep 26, 2011
* @version
*/
public class ArrayParameterTransfer {
public String nn = "main";
public static void main(String[] args) {
String[] s1 = new String[] { "Kitty", "Tom" };
char[] ch = new char[] { 'a', 'b', 'c' };
ArrayParameterTransfer a = new ArrayParameterTransfer();
System.out.println("Before change:" + a.nn);
changObj(a);
System.out.println("After change:" + a.nn);
change(s1, ch);
System.out.println(s1[0]);
System.out.println(ch);
}
/**
* change the field of a instance of class
*
* @param a
*/
private static void changObj(ArrayParameterTransfer a) {
a.nn = "sub";
}
/**
* chang the element value of a array
*
* @param s1
* @param ch
*/
private static void change(String[] s1, char[] ch) {
s1[0] = "Lily";
ch[0] = 'z';
}
}
打印:
Before change:main
After change:sub
Lily
zbc
总结:当数组作为参数传递的时候,在方法里面改变了数组元素,那么实际上数组就真的被改变了,纵使数组的元素是引用类型也一样;当传递的是一个类对象引用的时候,可以根据我们上一节分析,对象内字段自然也被改变了,因为直接操作的是堆里面的统一内容。
分享到:
相关推荐
11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java...
13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递....
58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递机制.zip58.java参数传递...
这里详细的说明了,java参数传递的过程,引用传递,值传递
关于Java参数传递的PPT,详细介绍参数传递的类型。彻底理解Java只有唯一传递方式——值传递。
java参数传递 java 参数
介绍java 方法的参数传递,本文是引用传递。
Java参数传递的经典教学PPT,引用类型,基础类型传递的区别,String和StringBuffer类型传递的区别。
传值还是传引用 详细讲解JAVA参数传递机制 一目了然
java的参数传递对比,体现了值传递和引用传递的区别,是我在java入门是写的学习demo
62.java引用类型的参数传递.zip62.java引用类型的参数传递.zip62.java引用类型的参数传递.zip62.java引用类型的参数传递.zip62.java引用类型的参数传递.zip62.java引用类型的参数传递.zip62.java引用类型的参数传递....
59.java基本类型的参数传递.zip59.java基本类型的参数传递.zip59.java基本类型的参数传递.zip59.java基本类型的参数传递.zip59.java基本类型的参数传递.zip59.java基本类型的参数传递.zip59.java基本类型的参数传递....
java参数的传递与返回值 江苏省无锡市
java传递参数的方法 很的东西 大家下载学习一下
Java的引用和函数参数传递Java的引用和函数参数传递Java的引用和函数参数传递Java的引用和函数参数传递
主要介绍了Java数组传递及可变参数操作,结合实例形式详细分析了java数组参数传递与可变参数相关使用技巧,需要的朋友可以参考下
Jni中C和Java的参数传递.doc
java 中函数的参数传递详细介绍 java 中函数的参数传递详细介绍
JNI中C和Java参数传递详细例子,各种数据类型,基本类型,数据,结构体,DEMO,非常适合初学者,一看就明,详细例子
java参数传递时到底是值传递还是引用传递分享.pdf