色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

如何理解Java中基本數(shù)據(jù)類型不可變

林雅南2年前58瀏覽0評論

如何理解Java中基本數(shù)據(jù)類型不可變?

這個是這樣的吧,基本數(shù)據(jù)類型的數(shù)據(jù)作為參數(shù)傳遞時不會影響原來數(shù)據(jù)的值。

以函數(shù)例子說明:

public class main {

public static void main(String[] args){

int i=0;

change(i);

System.out.println(i);

}

public static int change(int i){

i=i+5;

return i;

}

}

在main函數(shù)中輸出的i還是=0;無論在change中怎樣改變i的值,在main函數(shù)中調(diào)用change()前后的i的值都是一樣的。但是如果傳遞的引用類型的話,會改變原來的值。再看下面的例子

public class main {

public static void main(String[] args){

int i=0;

NumberTest j=new NumberTest(i);

change(i);

changeValue(j);

System.out.println(i);

System.out.println(j.getNum());

}

public static int change(int i){

i=i+5;

return i;

}

public static int changeValue(NumberTest num){

int j=num.getNum()+5;

num.setNum(j);

return j;

}

public static class NumberTest{

private int num;

public NumberTest(int num) {

super();

this.num = num;

}

public int getNum() {

return num;

}

public void setNum(int num) {

this.num = num;

}

}

}

changeValue()中傳入的是引用型變量NumberTest,在changeValue()中改變num的值后,在main函數(shù)中重新打印System.out.println(j.getNum());的值就由0變成5了。

所以說引用型變量是可變型變量,基本類型是不可變的,還有一個特殊的string

java有幾種數(shù)據(jù)類型,如何理解Java中基本數(shù)據(jù)類型不可變