java參數(shù)傳遞之值傳遞和引用傳遞
值傳遞
當(dāng)調(diào)用方法進(jìn)行值傳遞時(shí),方法內(nèi)部會(huì)產(chǎn)生一個(gè)局部變量,在方法內(nèi)部使用局部變量的值,并不影響傳入原來(lái)數(shù)據(jù)的值,包括在使用基本數(shù)據(jù)類型的包裝類。
public class Assc { public static void main(String[] args) { int x1=1; add(x1); System.out.println("最終"+x1);//1 Integer x2=new Integer(1); sub(x2); System.out.println("最終"+x2);//1 } public static void add(int x) { x++; System.out.println(x); //2 } public static void sub(Integer x) { x--; System.out.println(x);//0 } }
引用傳遞
當(dāng)調(diào)用方法時(shí)使用引用類型參數(shù)時(shí),使用的是與傳入?yún)?shù)同一地址的數(shù)據(jù),在方法內(nèi)部進(jìn)行參數(shù)的修改,會(huì)造成原來(lái)數(shù)據(jù)的改變(String 類型除外)
String類型數(shù)據(jù)在傳入時(shí),進(jìn)行的操作是在字符串常量池中新建一個(gè)字符串,并不影響原先字符串的值
public class Assc { public static void main(String[] args) { String str="hello"; combine(str); System.out.println("最終"+str);//hello StringBuilder sb=new StringBuilder("nihao"); combine2(sb); System.out.println("最終"+sb);//nihaoworld } public static void combine(String str) { str+="world"; System.out.println(str);//helloworld } public static void combine2(StringBuilder str) { str.append("world"); System.out.println(str);//nihaoworld } }
到此這篇關(guān)于java參數(shù)傳遞之值傳遞和引用傳遞的文章就介紹到這了,更多相關(guān)值傳遞和引用傳遞內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot使用shiro-整合redis作為緩存的操作
這篇文章主要介紹了springboot使用shiro-整合redis作為緩存的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06使用Springboot自定義轉(zhuǎn)換器實(shí)現(xiàn)參數(shù)去空格功能
這篇文章主要介紹了使用Springboot自定義轉(zhuǎn)換器實(shí)現(xiàn)參數(shù)去空格功能,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08java定時(shí)任務(wù)實(shí)現(xiàn)的4種方式小結(jié)
這篇文章主要介紹了java定時(shí)任務(wù)實(shí)現(xiàn)的4種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09詳解XML,Object,Json轉(zhuǎn)換與Xstream的使用
這篇文章主要介紹了詳解XML,Object,Json轉(zhuǎn)換與Xstream的使用的相關(guān)資料,需要的朋友可以參考下2017-02-02Java實(shí)現(xiàn)微信公眾號(hào)發(fā)送模版消息
大家好,本篇文章主要講的是Java實(shí)現(xiàn)微信公眾號(hào)發(fā)送模版消息,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-01-01Java中幾個(gè)Reference常見(jiàn)的作用詳解
這篇文章主要給大家介紹了Java中關(guān)于Reference多個(gè)作用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。2017-06-06spring+hibernate 兩種整合方式配置文件的方法
本篇文章主要介紹了spring+hibernate 兩種整合方式配置文件的方法,主要有兩種方式 1、注解方式 2、xml方式實(shí)現(xiàn),有興趣的可以了解一下。2017-04-04