[转] C++的引用传递、指针传递参数在java中的相应处理方法

原文出处:[http://blog.csdn.net/conowen/article/details/7420533]

首先要明白一点,java是没有指针这个概念的。

但是要实现C++的引用传递、指针传递参数的话,也可以用数组的方式来实现。就是是一个int类型,也可以用一个元素的数组实现。

或者也可以用全局变量的方式。(静态变量)

package com.conowen;
import android.app.Activity;
import android.os.Bundle; public class TestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); byte word[] = new byte[10]; int num[] = new int[1]; fun1(word, num);
System.out.println("最后的num[0]值----->" + num[0]);
System.out.println("最后的word[1]值----->" + word[1]);
} void fun1(byte[] word, int[] num) { // do something num[0] = 2; word[1] = 'a'; System.out.println("在fun1的num[0]值------>" + num[0]);
System.out.println("在fun1的word[1]值------>" + word[1]);
fun2(num); } void fun2(int[] num) { // do something num[0] = 1; System.out.println("在fun2的num[0]值------>" + num[0]); }
}

//04-01 21:57:23.320: I/System.out(1999): 在fun1的num[0]值------>2

//04-01 21:57:23.320: I/System.out(1999): 在fun1的word[1]值------>97

//04-01 21:57:23.320: I/System.out(1999): 在fun2的num[0]值------>1

//04-01 21:57:23.320: I/System.out(1999): 最后的num[0]值----->1

//04-01 21:57:23.320: I/System.out(1999): 最后的word[1]值----->97

上一篇:Mysql 5.7 使用SSL安全连接


下一篇:zookeeper原理(转)