Java基礎:數組的聲明,循環,賦值,拷貝。


數組的聲明

一般有兩種形式的聲明:

int[] a;
int a[];

這兩種聲明都沒錯,但是大多數都使用第一種聲明,因為變量名是獨立的,不帶任何符號。

聲明一個數組,並沒有將a真正的初始化為一個數組。

下面,語句就是聲明了一個可以存儲100個整數的數組。可以根據你的實際需求,更換int類型為你需要的數據類型。

int[] a=new int[100];

其中,數字數組的初始化默認為0。boolean為false。對象數組為null,如String類型的數組。

數組的循環

數組中的每個元素都有一個下標,下標從0開始,所以下標最大為數組的長度-1。

當我們需要依次輸出數組中的每個元素時,就需要用到循環。

for(int i=0;i<100;i++)
{
   System.out.println(a[i]);      
}

除了常規的循環,還有一種Java中的增強for循環,就相當於C#中的foreach,只是語法稍有不同。

for(int item:a)
{
   System.out.println(item);  
}

其中,int為遍歷對象的類型,item為自定義的一個名字,冒號后面的a就是你遍歷的對象,數組a。

增強for循環的用途很多,而且不用在意數組的下標。

數組的賦值

單單只聲明數組的話,數組的元素的值都只是默認值,下面的方法可以在聲明的同時初始化它們的值。

int[] a={1,2,3,4,5};

這種聲明,不需要手動限制它們的長度,它會根據值得個數,自動設置長度。

此時,a.length=5;

除了剛聲明就給數組初始化外。還有一種可以方法可以重新初始化一個數組。

a=new int[] {6,7,8,9,10};

實際情況下,很少說直接初始化一個數組的值,然后只用這些值。

一般情況下,需要聲明后,根據實際的情況,給數組賦值。

如果是單獨賦值就是a[i]=n;就行了。

還可以使用上面的for循環,給數組循環賦值。

數組的拷貝

Java允許將一個數組變量拷貝給另一個數組變量。

值得注意的是,拷貝不是單純的把a的值復制一份然后給b,而是a和b引用內存當中同一個數組。

大家可以把內存理解成很多個房間,變量名就是門牌號。就相當於a和b兩個門牌號指向同一個房間。

int[] a={1,2,3,4,5};
int[] b=a;

但是這種拷貝有種缺點,就是如果a[i]變了,對應的b[i]也會變。

如果你只是單純的想要a中的值,可以使用copyOf方法。

int[] b=Arrays.copyOf(a,a.lenght);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM