JAVA核心技術I---JAVA基礎知識(資料結構基礎)
阿新 • • 發佈:2019-01-04
一:陣列
(一)基本內容是與C一致的
(二)陣列定義和初始化
(1)宣告
int a[]; //a沒有new操作,沒有被分配記憶體,為null int[] b; //b沒有new操作,沒有被分配記憶體,為null(可以看做指標) int[] c=new int[2]; //為c分配了空間,且資料初始為0 for(int e : c) { System.out.println(e); }
(2)初始化
intd[] = new int[] {0,2,4}; int d1[]= {1,3,5}; //最符合c
(三)陣列索引
(1)陣列的length屬性標識陣列的長度,從0開始,到length -1
(2)越界ArrayIndexOutOfBoundsException異常
(3)遍歷方式
int d[] = new int[] {0,2,4}; for(int e : d) { System.out.println(e); } for(int i=0;i<d.length;i++) { System.out.println(d[i]); }
0 2 4 0 2 4
(四)多維陣列:不同之處在於可以實現不規則陣列
//規則陣列 int a[][] = new int[2][3]; //不規則陣列 int b[][]; b=new int[3][]; b[0] = new int[3]; b[1] = new int[4]; b[2] = new int[5]; int k=0; for(int i=0;i<b.length;i++) { for(int j=0;j<b[i].length;j++) { b[i][j]=k++; } } for(int[] items : b) { for(int item : items) { System.out.println(item); } }
二:JCF<Java Collection Framework>容器框架(同C++中STL)
(一)容器和容器框架了解
容器:能夠存放資料的空間結構
–陣列/多維陣列,只能線性存放 順序儲存
–列表/雜湊集/樹/..... 非順序儲存
容器框架:為表示和操作容器而規定的一種標準體系結構
–對外的介面:容器中所能存放的抽象資料型別
–介面的實現:可複用的資料結構
–演算法: 對資料的查詢和排序
容器框架優點:提高資料存取效率,避免程式設計師重複勞動
Java 1.1和以前的資料結構 –Vector, Stack, Hashtable,Enumeration等 Java1.2和以後,JCF集合框架 –功能更強大 –易於學習 –介面和實現分離,多種設計模式設計更靈活 –泛型設計
(二)結構分類
(三)介面,實現,演算法
(1)介面
(2)資料結構實現類
(3)演算法類