陣列:可以儲存多個元素並且多個元素是 同一種型別的容器
陣列的定義:
資料型別 陣列名;
資料型別 陣列名;
舉例:int a; 定義了乙個int型別的陣列變數a
int a ; 定義了乙個int型別 變數a陣列
這兩種方式的定義:雖然寫法不一樣,並且讀法不一樣,但是表達的效果一樣,都是在定義乙個陣列,推薦使用第一種方式;
陣列的初始化:
1)動態初始化: 給陣列指定長度,陣列中的元素值由系統預設給定
2)靜態初始化: 給定陣列中元素的值,陣列的長度由系統給定;
動態初始化:
資料型別 陣列名 = new 資料型別[陣列長度] ;
舉例:
int arr = new int[3] ;
沒有被初始化的陣列是不能使用的
獲取陣列中的元素:通過陣列名稱獲取
格式:
陣列名稱[索引值],陣列的索引值從0開始,最大的索引=陣列長度-1
陣列中經常會出現的異常:
arrayindexoutofbound***ception:陣列角標越界異常
出現的原因:訪問了陣列中不存在的索引值;
解決方案:觀察陣列中到底有索引值到多少; 陣列長度-1
nullpointerexception:空指標異常 (在實際開發中該異常是最多的)
出現的原因:物件為null,而開發者還要去使用物件,就會出現問題
解決方案:給某個物件進行非空判斷,防止程式程式空指標異常
對於異常:
把從頭到尾,將遇見到的異常建立文件,
出現該異常的原因
如何解決異常
oom異常:outofmemory:記憶體溢位 android 解決載入大量的問題:載入器:imageloader等等
陣列中的應用:
最值:
自定義乙個陣列,靜態初始化,求陣列中的最大值或者最小值;
分析: 最大值:
1)定義乙個陣列,靜態初始化
2)定義乙個參照物,分別和陣列中的其他元素進行比較,如果後面的元素都大於參照物,將後面作為參照物作為最大值
3)輸出
元素逆序:
分析:
定義乙個陣列,靜態初始化
將陣列中0索引對應的元素和arr.length-1索引對應的元素進行互換
將1索引對應的元素和arr.length-1-1索引對應的元素進行互換
....
只要保證陣列的長度arr.length/2
陣列中的元素基本查詢法:----->數值中的元素的查詢,查詢的是該元素在陣列中的索引
二維陣列:
資料型別 陣列名 = new 資料型別[m][n] ;
m:代表當前二維陣列中有多少個一維陣列
n:代表每乙個一維陣列中的長度
定義的方式還有以下兩種情況
資料型別 陣列名 = new 資料型別[m][n]
資料型別 陣列名 = new 資料型別[m][n]
二維陣列定義的第二種格式:
資料型別 陣列名 = new 資料型別[m] ;
只給定有m個一維陣列,每乙個一維陣列長度動態給定
二維陣列的格式三:
靜態初始化
資料型別 陣列名稱 = ,}
二維陣列的遍歷:
public static void printarray2(int arr) {
for(int x = 0 ; x < arr.length ; x ++) {
for(int y = 0 ; y < arr[x].length ; y++) {
system.err.print(arr[x][y]+" ");
基礎篇 05Java陣列
1.什麼是陣列 相同資料型別的元素組成的集合。這些元素按線性順序排列,所謂線性順序是指除最後乙個元素外,每乙個元素都有唯一的前驅元素 除最後乙個元素外,每乙個元素都有唯一的後繼元素。2.陣列的定義 int arr new int 4 每個數都是0 3.陣列的初始化 int arr 宣告陣列 arr ...
java基礎篇《5》 常用陣列排序演算法
氣泡排序演算法 author lucien don public class bublesort n個數要比較n 1輪,外迴圈比較輪數,for int i 0 i1 i for int i 0 i 選擇排序法 author lucien don public class selectsort for...
Java基礎篇 多型
簡單的講一講多型 多型思想 同乙個行為具有多個不同表現形式或形態的能力。前提條件 繼承 重寫 父類引用指向子類物件 基本語法 parent p new child 假如父類有五個子類,那麼父類引用可以指向五個不同的子類 非同時指向五個 增加易讀性和可維護性,降低記憶體占用。下面展示乙個有趣的小例子 ...