JAVA集合類
本電子書由站長百科(www.zzbaike.com)教程組制作JAVA 集合類? 出處:站長百科?? 原文地址:??? 本電子書整理自站長百科詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?IXWebHosting 首家
本電子書由站長百科


(www.zzbaike.com)教程組制作
JAVA 集合類
? 出處:站長百科?? 原文地址:??? 本電子書整理自站長百科詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
IXWebHosting 首家支持支付寶付款的美國主機(jī)商 贈(zèng)送15個(gè)獨(dú)立IP 及3個(gè)免費(fèi)域名 免備案中文網(wǎng)站() 購買方便 中文客服全程服務(wù) 更多優(yōu)惠碼: 購買更超值
在java 里還有一類東西與數(shù)組類似,也是有著特性的一組數(shù)(或是對象),叫做集合類。我們上節(jié)課講到了,數(shù)組的長度在創(chuàng)建時(shí)已經(jīng)確定了,但是有時(shí)候我們事先根本不知道長度是多少啊,比如我們做電子商務(wù)網(wǎng)站時(shí),有個(gè)購物車程序。你總不能用數(shù)組規(guī)定,人家只能買5樣?xùn)|西吧。你就是把長度定為10000也不行,萬一遇上個(gè)特別有錢的呢!呵呵,這只是開玩笑的。我們會(huì)使用集合類解決這個(gè)問題。
集合類是放在java.util.*;這個(gè)包里。集合類存放的都是對象的引用,而非對象本身,為了說起來方便些,我們稱集合中的對象就是指集合中對象的引用(reference)。引用的概念大家不會(huì)忘了吧,在前邊我們講數(shù)據(jù)類型時(shí)講的。
集合類型主要有3種:set(集)、list(列表)、map(映射)和Queue(隊(duì)列)。//隊(duì)列為jdk5中的加上的
(1) Set
集(set)是最簡單的一種集合,它的對象不按特定方式排序,只是簡單的把對象加入集合中,就像往口袋里放東西。對集中成員的訪問和操作是通過集中對象的引用進(jìn)行的,所以集中不能有重復(fù)對象。我們知道數(shù)學(xué)上的集合也是Set 這個(gè),集合里面一定是沒有重復(fù)的元素的。
?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA 集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
,本電子書由站長百科(www.zzbaike.com)教程組制作
(2)List
列表(List)的主要特征是其對象以線性方式存儲(chǔ),沒有特定順序,只有一個(gè)開頭和一個(gè)結(jié)尾,當(dāng)然,它與根本沒有順序的Set 是不同的。它是鏈表嘛,一條鏈肯定有順序這個(gè)順序就不一定了。
(3)Map
映射(Map),這個(gè)在java 里不是地圖的意思,其實(shí)地圖也是映射哈。它里面的東西是鍵-值對(key-value)出現(xiàn)的,鍵值對是什 么呢?舉個(gè)例子,比如我們查字典,用部首查字法。目錄那個(gè)字就是鍵,這個(gè)字的解釋就是值。鍵和值成對出現(xiàn)。這樣說可以理解吧。這也是很常用的數(shù)據(jù)結(jié)構(gòu)哦。
(4)Queue
在jdk5.0以前,通常的實(shí)現(xiàn)方式是使用java.util.List 集合來模仿
Queue.Queue 的概念通過把對象添加(稱為 enqueuing的操作)到List 的尾部(即Queue 的后部)并通過從List 的頭部(即Queue 的前部)提取對象而從 List中移除(稱為dequeuing 的操作)來模擬。你需要執(zhí)行先進(jìn)先出的動(dòng)作時(shí)可以直接使用Queue 接口就可以了。
這4個(gè)東西,有時(shí)候功能還不太完善,需要有些子類繼承它的特性。Set的子接口有TreeSet,SortedSet,List的有 ArrayList等,Map里有HashMap,HashTable 等,Queue里面有BlockingQueue 等。我們來看看例子吧:
實(shí)踐:
Set 舉例
import java.util.*;
public class SetExample {
public static void main(String[] args) {
Set set = new HashSet(); //HashSet是Set 的子接口
set.add("one");
?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA

集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
,本電子書由站長百科(www.zzbaike.com)教程組制作
set.add("second");
set.add("3rd");
set.add(new Integer(4));
set.add(new Float(5.0F));
set.add("second");
set.add(new Integer(4));
System.out.println(set);
}}
List 舉例:
import java.util.*;
public class ListExample {
public static void main(String[] args) {
List list = new ArrayList();
list.add("one");
list.add("second");
list.add("3rd");
list.add(new Integer(4));
list.add(new Float(5.0F));
list.add("second");
list.add(new Integer(4));
?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA

集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
,本電子書由站長百科(www.zzbaike.com)教程組制作
System.out.println(list);
}}
Map 舉例
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.io.FileReader;
public class MapExample {
public static void main(String[] args) throws java.io.FileNotFoundException {
Map word_count_map = new HashMap();
FileReader reader = new
FileReader(args[0]);
Iterator words = new
WordStreamIterator(reader);
while ( words.hasNext() ) {
String word = (String) words.next();
String word_lowercase = word.toLowerCase();
Integer frequency =
(Integer)word_count_map.get(word_lowercase);
?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA

集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
,本電子書由站長百科(www.zzbaike.com)教程組制作
if ( frequency == null ) {
frequency = new Integer(1);
} else {
int value = frequency.intValue();
frequency = new
Integer(value 1);}
word_count_map.put(word_lowercase, frequency);
}
System.out.println(word_count_map);
}}
Queue 舉例:
import java.io.IOException;
import java.io.PrintStream;
import java.util.LinkedList;
import java.util.Queue;
public class QueueTester {
public Queue
public QueueTester() {q = new
LinkedList
public void testFIFO(PrintStream out) throws IOException {
?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA

集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
,本電子書由站長百科(www.zzbaike.com)教程組制作
q.add("First");
q.add("Second");
q.add("Third");
Object o;
while ((o = q.poll()) != null) {
out.println(o);}}
public static void main(String[] args) {
QueueTester tester = new QueueTester();
try { tester.testFIFO(System.out);
} catch (IOException e) {
e.printStackTrace(); } }}
更多電子書
SEO 方面的知識(shí)有很多,對于新手來說,如果你不知道,不清楚這方面的知識(shí),那么,你可以看看這兩部搜索引擎指南:
SEO 搜索引擎優(yōu)化基礎(chǔ)教程:
SEO 搜索引擎優(yōu)化高級教程:
wordpress的中文翻譯文檔:http://www.wordpress.la/codex.html,wordpress 開發(fā)的相關(guān)知識(shí)都有,對WordPress開發(fā)感興趣的博主會(huì)有一定的用處。
WordPress免費(fèi)主題:http://www.wordpress.la/theme.html
WordPress免費(fèi)插件:http://www.wordpress.la/plugin.html
?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA

集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?
,本電子書由站長百科(www.zzbaike.com)教程組制作
WordPress 主題制作電子書:
Apache2.2中文文檔電子書:
IXWeHosting 控制面板使用手冊(在線版 PDF電子書) :
更多電子書下載:
視頻教程:
1. 美國主機(jī)IXWebHosting 使用視頻教程(在線觀看及下載)
2. Godaddy 主機(jī)及域名使用視頻教程(在線觀看及下載)
如果您有站長類電子書,請到這里與我們分享:
詳情見: http://bbs.zzbaike.com/thread-23156-1-1.html
站長百科感謝您下載閱讀,多謝支持! ?
?
?
出處:站長百科?原文地址:??本電子書整理自站長百科JAVA

集合類詞條,查看內(nèi)容請?jiān)L問網(wǎng)站。?