java基礎 陣列篇

2021-08-18 09:34:49 字數 2048 閱讀 4570

陣列:可以儲存多個元素並且多個元素是 同一種型別的容器

陣列的定義:

資料型別 陣列名;

資料型別 陣列名;

舉例: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 假如父類有五個子類,那麼父類引用可以指向五個不同的子類 非同時指向五個 增加易讀性和可維護性,降低記憶體占用。下面展示乙個有趣的小例子 ...