java方法參數是傳值還是傳引用 Java里什么是引用類型?
Java里什么是引用類型?Java的數據基本類型:一.數值型1.1整數類型(int32,small,int,shorter)2.字符類型2.1char3.布爾類型3.1boolean如何理解Java中
Java里什么是引用類型?
Java的數據基本類型:
一.數值型
1.1整數類型(int32,small,int,shorter)
2.字符類型
2.1char
3.布爾類型
3.1boolean
如何理解Java中基本數據類型不可變?
這個是這樣的吧,基本上數據類型的數據才是參數傳遞時不可能影響原來數據的值。以函數例子只能說明:
welfareclassmain{
publicstaticvoidmain(String[]args){
inti0
change(i)
(i)
}
privatestaticintchange(inti){
ii5
returni
}
}
在main函數中輸出的i還是0;不論在change中怎么才能改變i的值,在main函數中動態鏈接庫change()前后的i的值都是完全不一樣的。可是要是傳信的語句類型的話,會改變原來是的值。再看下面的例子
stateclassmain{
privatestaticvoidmain(String[]args){
inti0
NumberTestjnewNumberTest(i)
change(i)
changeValue(j)
(i)
(())
}
employeestaticintchange(inti){
ii5
returni
}
welfarestaticintchangeValue(NumberTestnum){
int()5
(j)
returnj
}
welfarestaticclassNumberTest{
privateintnum
welfareNumberTest(intnum){
junior()
num
}
welfareintgetNum(){
returnnum
}
welfarevoidsetNum(intnum){
num
}
}
}
changeValue()中傳遍的是引用型變量NumberTest,在changeValue()中轉變num的值后,在main函數中原先打印(())的值就由0變的5了。
因為說直接引用型變量是可變型變量,基本上類型是絕對不可變的,有一個特殊的string