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

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

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 男人j进女屁股视频在线观看 | 69av美女 | 99任你躁精品视频 | 亚洲精品国产一区二区第一页 | 亚洲日韩精品欧美一区二区 | 国产视频91在线 | 女人张开腿让男人桶视频免费大全 | 四虎私人影院 | 日韩欧美亚洲一区二区综合 | 欧美日韩国产成人综合在线影院 | 国产91第一页 | aaa毛片在线| 欧美理论片手机在线观看片免费 | 国产精品久久久久久福利 | 草草线在成年免费视频网站 | 色戒完整版2小时38分钟 | a级毛片毛片免费观看永久 a级黄色片免费 | 国产第一草草影院 | 精品欧美一区二区在线观看欧美熟 | 精品国产成人 | 97精品国产自在现线免费 | 无限在线看免费视频大全 | 二次元美女互摸隐私互扒 | 女高h| 色综合欧美色综合七久久 | 国语精彩对白2021 | 美女黄金大片视频免费看 | 99在线免费播放 | 久久学生精品国产自在拍 | 天美传媒tm0087 | 欧美一区精品 | 久久免费特黄毛片 | 12345国产精品高清在线 | 日麻逼| 2019亚洲男人天堂 | 四虎影在线永久免费观看 | 91视频国产自拍 | 成人午夜毛片 | 日韩高清一区二区 | 欧美bbxx| 好吊色青青青国产综合在线观看 |