Java Java自學筆記(六) 陣列

2021-09-25 03:02:56 字數 1721 閱讀 6448

*一維陣列的定義與訪問

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

·資料型別就是陣列中儲存元素的資料型別

·方括號就是定義的陣列

·陣列名其實就是乙個變數名,儲存是陣列的引用(陣列的起始位址)

·new 運算子會在堆中分配一塊連續的儲存空間,把這塊連續的儲存空間的引用(起始位址)儲存到陣列中

int data = new int[5];

·定義乙個陣列可以儲存五個int型別的資料,陣列名是data

·通過索引值訪問陣列的元素

·定義一陣列後,系統為每個元素指定乙個索引值,索引值是從0開始的,即陣列data的五個元素分別是

data[0]

data[1]

data[2]

data[3]

data[4]

*陣列是一種引用資料型別

·陣列可以作為方法的返回值型別,也可以作為方法的引數型別

*可變長引數

·定義乙個方法可以接受任意個資料

·定義:

方法名( 引數型別 ...  引數名)

·乙個方法最多有乙個可變長引數

·可變長引數只能放在引數列表的最後

·在方法體中,把可變長引數當做陣列使用即可

*陣列擴容

·當定義乙個陣列之後,陣列的長度就確定了,想要在陣列中儲存更多的資料就需要擴容

*陣列擴容的步驟

·定義乙個更大的陣列

·把原來陣列的內容複製到新的陣列

·讓陣列名指到新的陣列

*陣列的特點

·優點:

·陣列可以通過索引值(下標)可以實現陣列的隨機訪問

·缺點:

·插入或刪除元素效率比較低

·應用場景:

·陣列中訪問的元素以查詢訪問為主,很少進行新增/刪除

*物件陣列

陣列中儲存的是引用型別資料,就是物件陣列

*arrays工具類——陣列工具類

·aslist()————把陣列轉換為list列表

·int=binarysearch(int a ,int key)————在陣列a中查詢元素key 返回,key在陣列中的索引值,

如果陣列中不存在該元素返回負數,二分查詢的前提是

陣列已經有小到大排序

·int=copyof(int original,int newlength)————把陣列中original中的元素複製到乙個新的陣列

中,新的陣列的長度是newlength

·int=copyofrange(int original,int form,int to)————把陣列[fom,to)範圍的元素複製到新陣列中

·deeptostring(object a)————把多維陣列的元素轉換為字串

·fill(int,int val)————使用val來填充陣列a

·parallelsort(int a)————陣列排序,適用於陣列非常大的情況

·sort(int a)————對陣列進行排序

·sort(ta, comparator<? super t>c)————物件陣列排序時候,可以指定比較器

·tostring(inta)————把陣列元素轉換為字串

*幾種排序方法

·氣泡排序(從小到大)

從前往後兩兩比較,如果前面的數大於後面的數就交換

·選擇排序(從小到大)

從剩餘元素中選擇最小的放到最前面

*二分查詢

前提是已經從大大小排序

Cmake 自學筆記 linux (六)

前言 前面的五節是對於cmake的入門內容,接下來繼續學習其他內容 引入 前面我們在學習時,都是在自己寫標頭檔案和相關的庫,可當我們要使用第三方的庫時,我們就需要知道他的標頭檔案的路徑以及他的名字。然後加在我們的cmakelist中,我們之前寫的 其中 libhello以及target link l...

初識Java(Java陣列 陣列排序演算法

1.1 氣泡排序 在程式設計中,經常需要將一組數列進行排序,這樣更加方便統計與查詢。氣泡排序是最常用的陣列排序演算法之一,它排序陣列元素的過程總是將小數往前放 大數往後放,類似水中氣泡往上公升的動作,所以稱作氣泡排序。1 基本思想 氣泡排序的基本思想是對比相鄰的元素值,如果滿足條件就交換元素值,把較...

自學PHP的筆記(六)注釋標記陣列排序

三種注釋方法 1.echo order processed.2.echo order processed.3.echo order processed.php標記風格 1.xml風格 2.簡短風格 3.script風格 4.asp風格 陣列 建立陣列 products array tires oil...