八大基本數據類型以及他們的封裝類和String類型是值傳遞;其他都是引用傳遞。
以下爲代碼舉例:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ParamTest
{
public void changePoint(Point p)
{
// p = new Point();
p.x = 3;
p.y = 4;
}
public void changeInt(int a)
{
a = 5;
}
public void changeDoub(double doub)
{
doub = 8.88;
}
public static void main(String[] args)
{
// ParamTest pt = new ParamTest();
// Point point1 = new Point();
//
// pt.changePoint(point1);
//
// System.out.println(point1.x);
// System.out.println(point1.y);
Point p = new Point();
p.x=7;
p.y=8;
ParamTest pst= new ParamTest();
pst.changePoint(p);
System.out.println(p.x+" "+p.y);
int a = 3;
ParamTest pus = new ParamTest();
pus.changeInt(a);
System.out.println(a);
double doub = 5.66;
ParamTest pd = new ParamTest();
pd.changeDoub(doub);
System.out.println(doub);
String str = "a";
ParamTest pstr = new ParamTest();
pstr.changeStr(str);
System.out.println(str);
System.out.println("_____________________________");
int[] arr ={2};
ParamTest parr = new ParamTest();
parr.changeArr(arr);
System.out.println(arr[0]);
Map map = new HashMap();
map.put("1", "2");
ParamTest pmap = new ParamTest();
pmap.changemap(map);
System.out.println(map.get("1"));
char c = 'a';
ParamTest pc = new ParamTest();
pc.changeChar(c);
System.out.println(c);
boolean bb=true;
ParamTest boo=new ParamTest();
boo.changeBoo(bb);
System.out.println(bb);
int cha = 99;
System.out.println((char)cha);
for (char i = 'a'; i < 'z'; i++)
{
System.out.print(i);
}
System.out.println("______________________________");
System.out.println('a'+" "+34);
System.out.println('a');
System.out.println(" "+'a'+34);
Integer ig=new Integer(1);
ParamTest pig=new ParamTest();
pig.changeIntege(ig);
System.out.println(ig);
//八大基本數據類型以及他們的封裝類和String類型是值傳遞;其他都是引用傳遞。
String stt1=String.valueOf('b');
// System.out.println(=='b');
}
public void changeIntege(Integer ig)
{
ig=2;
}
public void changeBoo(boolean bb)
{
bb=false;
}
private void changeChar(char c)
{
c = 'b';
}
private void changemap(Map map)
{
map.put("1", "0");
}
private void changeArr(int[] arr)
{
arr[0] = 0;
}
private void changeStr(String str)
{
str = "b";
}
}
class Point
{
int x; //橫座標
int y; //縱座標
}