Java工作笔记-Java函数参传值传引用问题
生活随笔
收集整理的這篇文章主要介紹了
Java工作笔记-Java函数参传值传引用问题
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
?
?
基本概念
代碼與實(shí)例
源碼打包下載
?
基本概念
最近的系統(tǒng)中,Java程序和C++程序混著,很多程序都是用Java搞的,不得不稍微研究下Java的細(xì)節(jié),其中很關(guān)鍵的一點(diǎn),就是如何在Java中傳引用,因?yàn)橐邮找恍┲?#xff0c;在代碼中試了,用&這個(gè)玩意是沒(méi)有效果的。
下面給出Java程序中函數(shù)傳參數(shù),哪個(gè)是傳值,
這里發(fā)現(xiàn),如果是基本數(shù)據(jù)類型:int這種,都是傳值。
而自己寫(xiě)的Class為傳地址過(guò)去,
Integer和String在封裝后,里面有個(gè)final,這樣實(shí)際是傳地址,但賦值的時(shí)候,卻創(chuàng)建了個(gè)新的。
?
?
代碼與實(shí)例
程序運(yùn)行截圖如下:
源碼如下:
public class Main {public static void main(String args[]) {int intFunctionValue = 100;intFunction(100);System.out.println("Main functionValue : " + intFunctionValue);System.out.println("---------- 華麗的分割線 ----------");Integer IntegerFunctionValue = new Integer(100);IntegerFunction(IntegerFunctionValue);System.out.println("Main IntegerFunction : " + IntegerFunctionValue);System.out.println("---------- 華麗的分割線 ----------");Struct struct = new Struct();struct.setAge(17);struct.setName("heheda");ClassFunction(struct);System.out.println("Main ClassFunction : " + struct);System.out.println("---------- 華麗的分割線 ----------");}static void intFunction(int value){value = 200;System.out.println("intFunction value : " + value);}static void IntegerFunction(Integer value){value = 200;System.out.println("IntegerFunction value : " + value);}static void ClassFunction(Struct value){value.setAge(18);value.setName("Hello World");System.out.println("ClassFunction value : " + value);}static class Struct{private Integer age;private String name;public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "Struct{" +"age=" + age +", name='" + name + '\'' +'}';}} }?
?
源碼打包下載
地址如下:https://github.com/fengfanchen/Java/tree/master/FunctionParament
總結(jié)
以上是生活随笔為你收集整理的Java工作笔记-Java函数参传值传引用问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Arduino笔记-流水点灯
- 下一篇: java美元兑换,(Java实现) 美元