/********************************************************************************************
* author:conowen@大鐘
* E-mail:conowen@hotmail.com
* http://blog.csdn.net/conowen
* 註:本文為原創,僅作為學習交流使用,轉載請標明作者及出處。
********************************************************************************************/
首先要明白一點,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. */@Overridepublic 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 somethingnum[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 somethingnum[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