陣列 二維陣列 遍歷 異常

2021-10-02 02:14:56 字數 4386 閱讀 8563

建立物件的原則: 先父類後子類

載入內容原則: 先靜態後成員

this:當前new的物件

執行: 找new的物件

方法:多型情況 呼叫重寫方法

屬性:就近原則

new 的步驟:

值傳遞:基本資料型別是值傳遞

引用資料型別:位址值的傳遞

測試物件導向的使用:

陣列 [ ] : 相同資料型別的資料的有序集合

變數: 儲存單個資料

陣列: 儲存多個資料

陣列的特點:

陣列是乙個引用資料型別 , 類和介面也是

陣列長度一旦確定不可改變

相同資料型別的資料

有序(索引|下標)

宣告:資料型別 [ ] 陣列名; 優先使用

或 資料型別 陣列名[ ] ;

資料型別 : 陣列中所有資料的資料型別,資料型別可以為基本或者引用資料型別

動態初始化: 建立陣列物件,後續賦值

資料型別 [ ] 陣列名 = new 資料型別[長度];

靜態初始化: 建立陣列物件的同時並賦值

資料型別 [ ] 陣列名 = new 資料型別 [ ];

索引|下標: 從0開始,每次+1

運算元組中的資料 : 陣列名[下標]

屬性: 陣列名.length 獲取陣列中資料的個數

陣列中最後乙個資料的下標 : 陣列名[陣列名.length-1]

陣列中的資料不賦值存在預設值, 整數0 小數0.0 char』 』 boolean false 引用資料型別 null

陣列的遍歷方式 : for 和 for …each

例如:

int

arr3=

;for

(int i=

0;i)

或者是:

int

arr3=

;for

(int i:arr3)

陣列中的每乙個資料還是乙個陣列

建立宣告 :

資料型別 [ ][ ] 陣列名 ;優先使用

或者:資料型別 陣列名 ; 資料型別 陣列名 ;

動態初始化:

資料型別[ ][ ] 陣列名 = new 資料型別[一維的長度][二維的長度]; 二維的小陣列長度已經固定

資料型別[ ][ ] 陣列名 = new 資料型別[一維的長度][ ];

陣列名[0] = new int [二維的長度] ----意思是第0位的一維陣列,定義它的長度

靜態初始化: 建立的同時賦值

資料型別 陣列名 = new 資料型別,,};

也可以寫成 : 資料型別 陣列名 = ,,};

二維陣列的遍歷:

int

arr=

newint[2

][2]

; arr[0]

[0]=

1;arr[0]

[1]=

5;arr[1]

[0]=

8;arr[1]

[1]=

7;for(

int[

] in:arr)

}

陣列列印 : arrays.tostring(arr)

陣列公升序排序 : arrays.sort(arr) ;

查詢陣列索引具體位置:arrays.binarysearch(arr2, 9) 注意:需要先公升序排序

陣列的拷貝:arrays.copyof(arr2, 13)

陣列的指定範圍複製到乙個新陣列:arrays.copyofrange(arr2, 2,4))

public

static

void

main

(string[

] args)

; system.out.

println

(arr.length)

; system.out.

println

(arr)

;//把陣列中的內容以字串的形式返回 arrays.tostring

system.out.

println

(arrays.

tostring

(arr));

//sort 預設公升序排序

arrays.

sort

(arr)

; system.out.

println

(arrays.

tostring

(arr));

//binarysearch()二分查詢法 存在資料返回索引,不存在返回-(插入點)-1

int[

] arr2=

; system.out.

println

(arrays.

tostring

(arr2));

//先公升序排序

arrays.

sort

(arr2)

; system.out.

println

(arrays.

tostring

(arr2));

system.out.

println

(arrays.

binarysearch

(arr2,9)

);;//陣列的拷貝

//tatic int copyof(int original, int newlength)

system.out.

println

(arrays.

tostring

(arrays.

copyof

(arr2,13)

));;

//static int copyofrange(int original, int from, int to)

//將指定陣列的指定範圍複製到乙個新陣列。 結束素銀不包含

system.out.

println

(arrays.

tostring

(arrays.

copyofrange

(arr2,2,

4)))

;;}

異常的分類:

error:錯誤,一般不需要程式設計師管理,一般為虛擬機器生成並脫出的,程式設計師無權管理

exception:異常

runtimeeception:執行時異常 : 執行期間才會發現的異常; 一般通過增強程式的健壯性處理 if語句

checkedexception檢查時|編譯時異常 :編譯期會發生的異常,只能通過異常處理方式來解決,如果不解決程式無法執行

異常處理:

如果出現異常,肯定會影響**的執行,編譯時異常,無序無法執行,執行時異常程式無法繼續向下執行

丟擲異常:throws把問題丟擲到上一層,使用的人(方法)來解決

異常捕獲:try…catch

*

trycatch

(filenotfoundexception e)

catch

(filenotfoundexception e)

catch

(exception e)*.

..*finally

** 乙個try後可以新增多個catch

,至少乙個catch

* 如果try出現了異常,

try中下面的**都不執行了,只能去找對應的catch

*finally可以新增,可以不新增

*catch捕獲的異常較小,定義在上面,

catch捕獲的異常型別範圍大,定義在下面

* 如果出現異常,肯定會影響**的執行,編譯時異常,無序無法執行,執行時異常程式無法繼續向下執行

* 無論是編譯時異常還是執行時期異常,異常的兩種處理方式都可以進行處理

例項:

public

static

void

main

(string[

] args)

else

trycatch

(filenotfoundexception e)

catch

(exception e)

finally

system.out.

println

("main結束");

}public

static

void

test()

throws filenotfoundexception,arithmeticexception

遍歷二維陣列

二維陣列的初始化和如何用foreach輸出,需要注意的是,tdarray.length是二維陣列的個數,tdarray.length i 是第i 1的陣列的長度 public static void main string args for int i 0 i 獲取二維陣列中的最大值max int ...

二維陣列及二維陣列的遍歷

一 如果陣列的元素是一維陣列 則該陣列是二維陣列 如果陣列的元素是二維陣列 則該陣列是三維陣列 注意 二維陣列的長度 是陣列內一維陣列的個數 獲取二維陣列內的元素 第一步獲取該元素在哪乙個一維陣列內 第二步獲取該元素在一維陣列的那個位置 false var arr 1,2,3 var arr1 你好...

陣列 二維陣列

一組相同型別的資料組合,是一種引用型別。陣列名稱不是固定的,與其存放的資料的型別有關。如 存放int型別的資料,陣列名稱 int 存放字串資料,陣列名稱 string 存放scanner型別的資料,陣列名稱 scanner陣列中的每個資料,都是這個陣列的元素。1 宣告 元素型別 變數名 元素型別 變...