首頁 > Java > Java基礎 > java怎麼賦值

java怎麼賦值

angryTom
發布: 2019-11-15 10:25:16
原創
18287 人瀏覽過

java怎麼賦值

java怎麼賦值

#java的賦值語句是「=」號,例如把1賦值給a可以寫:int a = 1;,如果是String類型可以寫:String a = "1";物件可以寫成 User u1 = new User();

了解了基本的賦值語句,下面我們來學基本型別資料的賦值、String型別資料的賦值和自訂資料型別賦值的區別。 (推薦教學:java教學

一、基本型別資料賦值

實驗1 :定義一個int 類型變數a = 3,並將a 賦值給int b,然後將a ,賦值為5,那麼b 的值是3 還是5 呢?

int a = 3;
int b = a ;
a = 5 ;
System.out.println(" a = " + a+" b = "+b );
登入後複製

執行程式 ,列印結果為 :

a = 5 b =3
登入後複製

我們看到,b並沒有隨a的改變而改變。基本資料型別是值賦值。

二、String類型資料賦值

實驗2:定義一個String類型變數s1 賦值為「a」,並將s1賦值為String s2 ;然後將s1賦值為「b」,那麼s2的值是「a」還是「b」?

String s1 = "a" ;
String s2 = s1;
s1 = "b" ;
System.out.println("s1 = "+s1+" s2 = "+ s2);
登入後複製

運行程序,列印結果為:

s1 = b s2 =a
登入後複製

我們看到,s2並沒有隨s1的改變而改變。

三、自訂資料型別賦值

實驗3: 建立一個TUser u1 ,並將u1賦值給TUser u2 ,將u1重新賦值,u2會隨著u1改變而改變嗎?

TUser u1 = new TUser();
u1.setId(1);
TUser u2 = u1 ;
u1 = new TUser();
u1.setId(2);
System.out.println("ui :"+u1 + "\t\n" +"u2 : "+ u2);
登入後複製


運行程序,列印結果為:

u1 :TUser(id=2)
u2 : TUser(id=1)
登入後複製

我們看到u2並沒有隨著u1的改變而改變。如果我們不改變u1指向的位址,而是改變u1指向位址所對應的資料(即將 u1 = new TUser(); 註解掉)。那麼u1,u2 列印的記過將會是TUser(id=2)

透過以上三個實驗我們發現:

● 變數之間的賦值,可以說沒有所謂的值賦值和位址賦值。

● 簡而言之,將一個變數a賦值給另一個變數b,是將這個變數a的值,拷貝一份給變數b(如​​果a是引用型,就拷貝引用,如果是基本型,就拷貝原始值)

#

以上是java怎麼賦值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板