摘要:靜態初始化初始化時由程序員顯示指定每個數組元素的初始值,由系統決定數組長度。使用數組數組最常用的用法就是訪問數組元素,包括對數組元素進行賦值和取出數組元素的值。
理解數組:數組也是一種類型
Java的數組要求所有數組元素具有相同的數據類型.
一旦數組的初始化完成,數組在內存中所占的空間將被固定下來,因此數組的長度將不可改變.如:
public static void main(String[] args) { // TODO Auto-generated method stub int[] arr = new int[2]; arr[0] = 0; arr[1] = 1; arr[2] = 2; for(int i = 0;i < arr.length;i++){ System.out.println(arr[i]); } }
上述代碼在運行的時候會報錯---Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
定義數組Java語言支持兩種語法格式來定義數組:
type[] arrayName;
type arrayName[];
對于這兩種語法格式而言,通常推薦使用第一種格式。因為第一種格式不僅具有更好的語意,而且具有更好的可讀性。
數組是一種引用類型的變量,因此使用它定義一個變量時,僅僅表示定義了一個引用變量(也就是定義了一個指針),這個引用變量還未指向任何有效的內存空間,所以還沒有內存空間來存儲數組元素,因此這個數組也不能使用,只有對數組進行初始化后才可以使用。
所謂初始化,就是為數組的數組元素分配內存空間,并為每個數組元素賦初始值。
數組的初始化有如下兩種方式。
靜態初始化: 初始化時由程序員顯示指定每個數組元素的初始值,由系統決定數組長度。
動態初始化: 初始化時程序員只指定數組長度,有系統為數組元素分配初始值。
使用數組數組最常用的用法就是訪問數組元素,包括對數組元素進行賦值和取出數組元素的值。Java語言的數組索引值為數組長度減1.如果訪問數組元素時指定的索引值小于0,或者大于等于數組的長度,編譯程序不會出現任何錯誤,但運行時出現異常: java.lang.ArrayIndexOutOfBoundsException.
foreach循環String[] names = {"zuckjet", "zuckberg"}; for (String name: names) { System.out.println(name); }
使用foreach循環迭代變量數組元素時,并不能改變數組元素的值,因此不要對foreach的循環變量進行賦值。
探究數組是一種引用數據類型,數組引用變量只是一個引用,數組元素和數組變量在內存中是分開存放的。
與所有引用變量相同的是,引用變量是訪問真實對象的根本方式。也就是說,如果希望在程序中訪問數組對象本身,則只能通過這個引用變量訪問它。實際的數組對象被存儲在堆內存中。
如果內存中數組不再有任何引用變量指向自己,則這個數組將成為垃圾,該數組所占的內存將會被系統的垃圾回收機制回收。因此,為了讓垃圾回收機制回收一個數組所占的內存空間,可以將該數組變量賦為null.
int[] a = {1, 3, 5}; int[] b = {2, 4, 6, 8}; b = a; System.out.println(b.length) //3
a變量和b變量都引用了第一個數組。此時第二個數組失去了引用,變成了垃圾,只有等待垃圾回收機制來回收它。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/67388.html
摘要:是完全面向對象的語言,對象具有狀態行為和標識。類一一是具有共同特征和行為的一類事物的統稱。受保護的,對同一包內的類和所有子類可見。一種通用的內存池,用于存放所有對象。類級變量又稱全局級變量或靜態變量,需要使用關鍵字修飾。 java語言的基本特點 java語言是面向對象的高級程序設計語言,它是編譯型的語言,Java語言不使用指針,并提供了自動的垃圾回收機制,使得程序員不必為內存管理而擔...
摘要:單線程集合本部分將重點介紹非線程安全集合。非線程安全集合框架的最新成員是自起推出的。這是標準的單線程陣營中唯一的有序集合。該功能能有效防止運行時造型。檢查個集合之間不存在共同的元素。基于自然排序或找出集合中的最大或最小元素。 【編者按】本文作者為擁有十年金融軟件開發經驗的 Mikhail Vorontsov,文章主要概覽了所有標準 Java 集合類型。文章系國內 ITOM 管理平臺 O...
閱讀 3033·2021-11-24 10:21
閱讀 1603·2021-10-11 10:57
閱讀 2815·2021-09-22 15:24
閱讀 2684·2021-09-22 14:58
閱讀 2339·2019-08-30 13:16
閱讀 3491·2019-08-29 13:05
閱讀 3424·2019-08-29 12:14
閱讀 3464·2019-08-27 10:55