
1.工具及套件版本說明及使用權限:
使用JAVA util 套件 版本 JDK 6
import java.util.Calendar;
import java.util.Date
2.功能及用途說明:
傳入日期,傳出星期中文字。
3.流程原理說明:
3.1傳入Date日期物件後,轉為Calendar物件
3.2利用enum物件將中文字存入及Calendar星期代碼
3.3利用Calendar.DAY_OF_WEEK 取出星期代碼
3.4最後用switch功能,依代碼回傳中文字星期
4.如何實作套用範例說明:
直接呼叫及可EWeekDay.getWeekOfDate(要Date日期物件);
PG Levin Li 發表在 痞客邦 留言(0) 人氣(142)
Map myMap = new HashMap();
myMap.put("1", "星期一");
myMap.put("2", "星期二");
myMap.put("3", "星期三");
myMap.put("4", "星期四");
myMap.put("5", "星期五");
myMap.put("6", "星期六");
myMap.put("7", "星期日");
System.out.println("1、使用Iterator取得 ...");
//順序 Map -> Set -> Iterator -> Map.Entry -> getKey, getValue
//Java 1.2 以上
Iterator iterator = myMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry mapEntry = (Map.Entry) iterator.next();
System.out.println("The key is: " + mapEntry.getKey()
+ ",value is :" + mapEntry.getValue());
}
System.out.println("2、使用for Iterator取得 ...");
// myMap.entrySet().iterator()
//Java 1.2 以上
for (Iterator it = myMap.entrySet().iterator(); it.hasNext();) {
Map.Entry mapEntry = (Map.Entry) it.next();
System.out.println("The key is: " + mapEntry.getKey()
+ ",value is :" + mapEntry.getValue());
}
System.out.println("3、使用foreach取得 ...");
// 使用myMap.entrySet()
//Java 5 以上
for (Map.Entry entry : myMap.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue());
}
System.out.println("4、使用foreach取得 ...");
// myMap.keySet()
//Java 5 以上
for (Object key : myMap.keySet()) {
System.out.println("Key : " + key.toString() + " Value : "
+ myMap.get(key));
}
PG Levin Li 發表在 痞客邦 留言(0) 人氣(437)
包含 collection 框架、遺留的 collection 類別、事件模型、日期和時間設施、
國際化和各種實用工具類別(字元串標記產生器、隨機數產生器和位元陣列)。
介面目錄
PG Levin Li 發表在 痞客邦 留言(0) 人氣(103)
凡是有實作java.lang.Iterable介面的類別,或是繼承java.lang.Iterable介面的介面,都具有
iterator()方法,可用iterator取值。Set介面與List介面都有繼承
java.lang.Iterable,可以使用iterator取值。
以下以Set介面為例,介紹使用iterator取出集合內所有的值的方法。import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class setPractice {
public static void main(String args[]){
/*
* 宣告型態為Set,實體為HashSet的變數
* setTest,限制只能加 入String型態
* 的資料到setTest中
*/
Set setTest = new HashSet();
/*
* 宣告Iterator型態的變數 it,
* 限制只能將String型態加入it
*/
Iterator it;
setTest.add("apple"); //apple加入setTest
setTest.add("banana");//banana加入setTest
setTest.add("tomato");//tomato加入setTest
/* setTest呼叫iterator()方法,回傳Iterator型態的物件,
* 該物件包含所有setTest內所存放的值,
* 將該物件存入it
*/
it = setTest.iterator();
/*
* hasNext()為使用游標走訪Iterator物件,檢查下一筆元素是包含物件,
* 有包含物件則傳回true,否則false。
* 游標的起始位置在Iterator第一筆元素之前,所以第一次執行hasNext(),
* 會檢查Iterator的第一筆元素,使用此方式可以走訪Iterator內的所有物件
*/
while (it.hasNext()) {
/*
* next()為使用游標走訪Iterator,取出下一筆的值。
* 游標的起始位置在Iterator第一筆之前,所以第一次執行next(),會
* 取出Iterator的第一筆資料
*/
System.out.println(it.next());
}
}
}
PG Levin Li 發表在 痞客邦 留言(0) 人氣(643)
集合(Collection),又稱為容器(Container),可以用來持有物件。集合與陣列(Array)最大的不同在於陣列具有固定的長度,集合沒有固定的長度。
集合常用介面為:List,Set,Map。這三個介面皆是從JDK1.2版出現。
List介面:具有順序性,可取得指定位置的內容,或是把內容加到指定的位置。常見的實作類別(Implementing Class)有Vector, ArrayList。Vector自JDK1.0出現,從JDK1.2起,Vector類別實作List介面。
Set 介面 :不可加入重複的物件。舉例而言,x.equals(y),當x已經在Set中,則y不能加入。常見的實作類別為HashSet, TreeSet。
Map 介面 : 具有Key與Value,透過Key來取得對應的Value;key不可重複。常見的實作類別為HashTable, HashMap。 HashTable 自JDK1.0出現,從JDK1.2起, HashTable 類別實作Map介面。
這三個介面中,只有List 介面與Set介面繼承自Collection介面。
請參考JAVA官方API Docs:
List介面
Set介面
Map介面
PG Levin Li 發表在 痞客邦 留言(0) 人氣(3,054)
在集合(Collection)中,我們常使用List這個介面(Interface)。要實作List,通常會使用 ArrayList或 LinkedList 這兩個Class。那麼何時使用ArrayList較好,又何時使用LinkedList較好呢? ArrayList採用的資料結構是Array(陣列);LinkedList採用的資料結構是 LinkedList (翻譯為鏈結串列或連結串列)。
陣列是在大家學習集合前必須要有的基礎知識,因此在這邊先簡單的介紹鏈結串列。鍊節串列的每一個節點包含的資訊有:1. 本身儲存的資料 2. 指到另一個節點所在的位址。鍊節串列可分為單向鍊節串列,雙向鍊節串列,迴圈鍊節串列等等。詳情可參閱維基百科: 連結串列。
PG Levin Li 發表在 痞客邦 留言(0) 人氣(10,399)