一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - Java中的按值傳遞和按引用傳遞的代碼詳解

Java中的按值傳遞和按引用傳遞的代碼詳解

2021-05-09 12:24圍城灬 Java教程

本文通過實例代碼給大家介紹了Java中的按值傳遞和按引用傳遞的相關知識,感興趣的朋友跟隨腳本之家小編一起學習吧

先使用int實驗:

?
1
2
3
4
5
6
7
8
9
10
11
12
public class ttest {
  private static  list<userentity> mlist = new linkedlist<userentity>(); 
  public static void main(string[] args) {
    int a = 0;
    changea(a);
    system.out.println("a = "+a);
  }
   
  public static void changea(int a){
    a = 1;
  }
}

輸出:a = 0

這說明對于int值是按值傳遞。其他幾個基本類型也是如此。

再使用自己定義的類userentity來實驗:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class userentity {
  private string name;
  public string getname() {
    return name;
  }
  public void setname(string name) {
    this.name = name;
  }
}
 
public class ttest {
  public static void main(string[] args) {
    userentity userentity = new userentity();
    userentity.setname("猿猴");
    changename(userentity);
    system.out.println("name = "+userentity.getname());
  }
  public static void changename(userentity userentity){
    userentity.setname("忽必烈");
  }
}

輸出:name = 忽必烈

我們再來使用一個linkedlist<object>來實驗:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.linkedlist;
import java.util.list;
public class ttest {
   private static list<userentity> mlist = new linkedlist<userentity>(); 
  public static void main(string[] args) {
    userentity userentity = new userentity();
    userentity.setname("石頭");
    adduser(userentity);
    system.out.println("name = "+userentity.getname());
  }
  public static void adduser(userentity userentity){
    mlist.add(userentity);
    mlist.get(0).setname("猿猴");
  }
}

輸出:name= 猿猴

這說明在使用我們自己定義的類時,是按引用傳遞的。

接著,再來使用string實驗:

?
1
2
3
4
5
6
7
8
9
10
public class ttest {
  public static void main(string[] args) {
    string str= "開始的";
    changestr(str);
    system.out.println("str = "+str);
  }
  public static void changestr(string str){
    str = "改變的";
  }
}

輸出:str = 開始的

用integer做實驗也會發現沒有改變。

說明我們按照java內置的對象也是值傳遞。因此我們可以做如下總結:

只要我們自己定義的類創建的對象,都是引用傳遞,系統內置的基本類型和對象都是指傳遞。

總結

以上所述是小編給大家介紹的java中的按值傳遞和按引用傳遞,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:https://blog.csdn.net/qq_34939308/article/details/80674829

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 狠狠狠地啪香蕉 | 天天欲色成人综合网站 | 国产精品亚洲w码日韩中文 国产精品香蕉在线观看不卡 | 国产一区二区三区在线观看视频 | 91高清国产视频 | 亚洲天天综合网 | 国产美女亚洲精品久久久久久 | 91影视在线看免费观看 | 国产精品香蕉夜间视频免费播放 | 四虎影院新网址 | 成人网18免费网 | 天堂久久久久va久久久久 | 99视频有精品 | 亚洲午夜天堂 | 三级午夜宅宅伦不卡在线 | 日本卡一卡2卡3卡4精品卡无人区 | 久久这里都是精品 | 欧美精选视频 | 欧美成黑人性猛交xxoo | 午夜精品在线视频 | 成人免费视频播放 | 女娃开嫩苞经历小说 | 亚洲欧美日韩成人一区在线 | 视频大全在线观看免费 | 亚洲精品国产精品麻豆99 | 美女一级ba大片免色 | 九九艹| 四虎免费影院4hu永久免费 | 日韩一区二区中文字幕 | 国产一区在线免费观看 | xxxxxx日本处大片免费看 | 国产大胆歌舞团网站 | 国产精品成人免费 | 干露露视频 性感写真 | 国产三级精品久久三级国专区 | 国产一区在线播放 | 7777奇米 | 国产99精品免费视频看6 | 丰满艳妇亲伦视频 | 91精品国产高清久久久久久io | www.国产自拍 |