首頁 > 其他

Java核心[3]:認識物件陣列及比較物件

2019-12-11 04:54:21

物件也是一個變數,和其他的其本資料型別。同樣也有物件也有陣列的定義及使用。不僅如此,對相之間也可以比較,不過物件間的比較較特殊。這裡我們開始學習有關這方面的知識


1

物件陣列,即陣列的資料型別為物件。在前面我們也提過,因為使用物件導向。Java可以讓我們建立自己需要的資料型別。這裡的物件就是如此

2

物件陣列的宣告格式同基本資料型別。不過宣告之前必須定義好相關的類。宣告格式1:類名 陣列名[];//宣告類型別的陣列變數? ? ? ? ? ? 資料名 =new 類名(物件個數);//使用new分配記憶體宣告格式2:類名 資料名[] = new 類名[物件個數];宣告格式3:這裡使用的靜態方式來初始化物件陣列(這個後面會講到)? ? ? ? ? ? 類名 陣列名[]={new 類名(),new 類名(),...,new 類名()};宣告這後,我們還需要為每個陣列元素指向類所產生的物件,即類名[0] =new 類名();類名[1] = new 類名();...類名[n-1] = new 類名();

3

下面,我們定義一個Person類,並建立一個陣列物件,並初始化,演示一下,物件陣列的使用,程式碼及結果如下:


1

在Java語言中有兩種方式用於物件間的比較:」==「運算子和equals()方法。兩種比較的目的不同,其中」==「比較的是兩個物件的記憶體地址值是否相等,equals()方法用於比較兩個物件的內容是否一致。

2

在這裡,我們經常用到的是字串類的物件間的比較。在下面的程式碼中,我們將展示String物件間的比較。其中定義兩個String類物件變數str1,str2,同時為兩個字串同時賦相同的字串。如果再定義一個String str3=str2;這句話,其實是說明str3物件參照了str2的記憶體地址。即str3並沒有按str2物件的值進行賦值,而是把str2字串所在的記憶體地址賦給了str3,此時比較str3==str2時,我們就能看到兩個物件間的記憶體地址相同。這點在程式設計尤其需要注意。



IT145.com E-mail:sddin#qq.com