定義乙個陣列
型別 陣列名 = 初始化
記憶體分析
宣告是宣告在棧區
堆區儲存new出來的物件
靜態初始化 (不進行初始化每個int型陣列中的元素預設初始化為0,char 為\u0000 空格的unicode碼,string型為null,boolean 為false,float double 為0.0)
int a = ;動態初始化 先宣告乙個陣列,後在使用該陣列或陣列中的某個元素時在賦值
長度確定,無法更改
元素必須為相同的型別
陣列可以為任意型別,包括基本型別和引用型別
陣列變數屬引用型別,陣列可以看作為物件,陣列中的每個元素相當於該物件的成員變數。陣列本身就是物件,j**a中的物件在堆區中,因而陣列物件本身也在堆區中。
若某個二維陣列中存在很多個相同的元素,可以採用壓縮陣列的方式來儲存非相同的陣列元素,同時節省空間。
壓縮陣列只有三列,第一行第一列的元素用來儲存原陣列的行數,第一行第二列用來儲存原陣列的列數,第一行第三列用來儲存原陣列的非相同元素的個數。**如下:
public static void main(string args)system.out.println();
}system.out.println("壓縮後的陣列:");
int arr2 = new int[3][3];//新陣列的行數為原陣列非零值的個數加一
arr2[0][0] = 5;//壓縮後的陣列第一行第一列記錄原陣列的行數
arr2[0][1] = 6;//第一行第二列記錄原陣列的列數
arr2[0][2] = 2;//第一行第三列記錄原陣列一共有多少個非零值
int count=0;
for(i=0;i
{for(j=0;j
{if(arr1[i][j]!=0)
{count++;
arr2[count][0] = i;
arr2[count][1] = j;
陣列轉稀疏陣列
針對於陣列轉稀疏陣列 壓縮 public static void main string args system.out.println system.out.println 稀疏陣列 將二維陣列轉換為稀疏陣列 先遍歷二維陣列 得到非0資料的個數 記錄非0資料 int sum 0 for int i...
kuangshenshuo 陣列 稀疏陣列
實現 public static void main string args system.out.println 轉換為稀疏陣列儲存 獲取有效值的個數 int sum 0 for int i 0 i 11 i system.out.println 有效值的個數 sum 2.建立乙個稀疏陣列的陣列並...
普通陣列轉化稀疏陣列
package sparsearray create by author luozhiyuan qq 707530775 qq.com on 2019 08 04.time 23 44 public class sparsearray system.out.println public static...