freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java語言程序設(shè)計基礎(chǔ)教程(javaapplet基礎(chǔ)與java實現(xiàn))ppt-閱讀頁

2024-11-02 14:50本頁面
  

【正文】 節(jié)點中的數(shù)據(jù)是參數(shù) element指定的對象。 ? public Object removeFirst() //刪除第一個節(jié)點,并返回這個節(jié)點中的對象。 ? public Object remove (int index) //刪除指定位置的節(jié)點 ? public Object get (int index) //得到指定位置的節(jié)點 ? public Object getFirst() //得到鏈表第一個節(jié)點的對象。 ? int indexOf(Object element):返回節(jié)點對象 element在鏈表中首次出現(xiàn)的位置,如果鏈表中無此節(jié)點對象則返回 1。 ? public Object set(int index,Object element) //將當前鏈表 index位置節(jié)點中的對象替換成參數(shù) element指定的對象,返回被替換對象。 ? public boolean contains(Object element):判斷鏈表節(jié)點對象中是否含有 element。 ? import .*。 ? (is)。 ? int number = ()。 ? for (int i = 0。 i++) { ? String temp = (String) (i)。 ? } ? (0, It)。 ? (number 1, door)。 ? (現(xiàn)在鏈表中有 + number + 個節(jié)點: )。 i number。 ? (第 + i + 節(jié)點中的數(shù)據(jù): + temp)。 ? (1)。 ? number = ()。 ? for (int i = 0。 i++) { ? String temp = (String) (i)。 ? } ? } ? } 程序運行后的效果如下所示: Iterator類遍歷鏈表 ? 迭代器( Iterator)模式,又叫做游標( Cursor)模式。 ? 從定義可見,迭代器模式是為容器而生。迭代器給我們提供了一種通用的方式來訪問集合中的元素。 ? Object next():返回迭代的下一個元素。 使用 Iterator接口遍歷鏈表: ? 一個鏈表對象可以使用 iterator()方法獲取Iterator變量, Iterator對象中每個數(shù)據(jù)成員剛好是鏈表節(jié)點中的數(shù)據(jù),而且這些數(shù)據(jù)成員是按順序存放在 Iterator對象中的, Iterator對象使用 next()方法可以得到其中的數(shù)據(jù)成員。我們可以借助 Iterator對象實現(xiàn)遍歷鏈表,一個鏈表對象可以使用 iterator()方法獲取一個 Iterator對象,后者使用 next()方法遍歷鏈表。 【 例 123】 這個例子中,把學生的成績存放在一個鏈表中,并實現(xiàn)了遍歷鏈表。 ? class Student { ? String name。 ? float score。 ? = number。 ? } ? } ? public class LinkListThree { ? public static void main(String args[]) { ? LinkedList mylist = new LinkedList()。 ? (stu_1)。 ? (stu_3)。 ? Iterator iter = ()。 ? ( + + + + )。 只能在一端進行輸入或輸出數(shù)據(jù)的操作 , 堆棧把第一個放入該堆棧的數(shù)據(jù)放在最底下 , 而把后續(xù)放入的數(shù)據(jù)放在已有數(shù)據(jù)的頂上 , 表尾稱為棧頂( top) , 表頭稱為棧底 ( bottom) 。 向堆棧中輸入數(shù)據(jù)的操作稱為 “ 壓棧 ” , 從棧中輸出數(shù)據(jù)的操作稱為 “ 彈棧 ” 。如果空,返回 true,否則返回 false ? public object peek() //查看堆棧頂端的數(shù)據(jù),但不刪除該數(shù)據(jù)。 【 例 125】 本例將數(shù)字1,2,3,4,5, 6壓入堆棧,然后彈出。 ? class StackOne { ? public static void main(String args[]) { ? Stack mystack = new Stack()。 ? (new Integer(2))。 ? (new Integer(4))。 ? (new Integer(6))。 ? ( + ())。比如,遞歸是一種很消耗內(nèi)存的算法,我們可以借助堆棧消除大部分遞歸,達到和遞歸算法同樣的目的。 ? 可以采用鏈表的方法來實現(xiàn)棧。 ? 用方法 removeFirst()實現(xiàn)出棧。 ? 用方法 isEmpty() 實現(xiàn)棧是否為空。 TreeSet類是實現(xiàn) Set接口的類,它的大部分方法都是接口方法的實現(xiàn),TreeSet類創(chuàng)建的對象稱為樹集。 ? 樹集是個有序集合,可以按照任何順序?qū)⒃夭迦朐摷希撛貙⒈患{入它的相應(yīng)的排序位置;當?shù)ㄟ^該集合時,各個值將自動按照排序后的順序出現(xiàn);將元素添加給樹集的速度要比將它添加給散列表慢,但是仍然比添加到數(shù)組或鏈接式列表中的正確位置快。 ? (boy)。 ? (apple)。 ? 和鏈表不同的是 , 當使用構(gòu)造方法 TreeSet()創(chuàng)建樹集后 , 再用 add 方法增加節(jié)點時 , 節(jié)點會按其存放的數(shù)據(jù)的字典序一層一層地依次排列 , 在同一層中的節(jié)點從左到右按字典序遞增排列 , 下一層的都比上一層的小 。 ? import .*。 ? (boy)。 ? (apple)。 ? Iterator te = ()。 ? } ? } TreeSet( Comparator c)創(chuàng)建一個樹集 ? 很多對象不適合用字典序進行比較,在創(chuàng)建樹集時可自己規(guī)定節(jié)點按著什么樣的“大小”順序排列。 1.首先創(chuàng)建學生的 NewStudent類必須實現(xiàn)接口:Comparable。 NewStudent類通過實現(xiàn)這個接口來規(guī)定它創(chuàng)建的對象的大小關(guān)系,如下所示。 ? public class NewStudent implements Comparable { ? int english = 0。 ? NewStudent(int e, String n) { ? english = e。 ? } ? public int pareTo(Object b) { ? NewStudent st = (NewStudent) b。 // 按成績大小排列對象。 ? Student stu2=(Student)b。 ? } ? })。 TreeSet類的一些常用方法 ? TreeSet類的一些常用方法如下: ? public boolean add(Object o):向樹集添加加節(jié)點,添加成功返回true,否則返回 false。 ? public void contains(Object o):如果包含節(jié)點 o返回 true 。 ? public Object last():返回最后一個節(jié)點(最大的節(jié)點)。 ? public boolean remove(Object o):刪除節(jié)點 o。 樹映射 ? 上一節(jié)學習的樹集 TreeSet適合用于數(shù)據(jù)的排序,結(jié)點是按著存儲的對象的大小升序排列。樹映射使用: ? public V put(K key,V value)。和樹集不同的是,樹映射保證結(jié)點是按照結(jié)點中的關(guān)鍵字升序排列。 ? TreeMap(Comparator? super K c):構(gòu)造一個新的空映射,該映射根據(jù)給定的比較器進行排序。 ? import .*。 ? StudentKey(double d) { ? = d。 ? if (( ) == 0) { ? return 1。 ? } ? } ? } ? class Student1 { ? String name = null。 ? Student1(String s, double m, double e) { ? name = s。 ? english = e。 ? StudentKey key2 = (StudentKey) b。 ? } ? })。 ? double math[] = { 89, 45, 78, 76 }。 ? Student1 student[] = new Student1[4]。 k 。 ? } ? StudentKey key[] = new StudentKey[4]。 k 。 ? } ? for (int k = 0。 k++) { ? (key[k], student[k])。 ? (樹映射中有 + number + 個對象 ,按數(shù)學成績排序 :)。 ? Iterator iter = ()。 ? (姓名 + + 數(shù)學 + )。 ? for (int k = 0。 k++) { ? key[k] = new StudentKey(student[k].english)。 k 。 ? } ? number = ()。 ? collection = ()。 ? while (()) { ? Student1 stu = (Student1) ()。 ? } ? } ? } 程序運行后的結(jié)果如下所示: Hashtable ? 使用 Hashtable類來創(chuàng)建散列表對象。散列表在它需要更多的存儲空間時會自動增大容量。 ? 為了成功地在哈希表中存儲和檢索對象,用作鍵的對象必須實現(xiàn) hashCode 方法和 equals 方法。它將數(shù)字的名稱用作鍵: ? 【 例 1213】 ? Hashtable numbers = new Hashtable()。 ? (two, new Integer(2))。 ? 要檢索一個數(shù)字,可以使用以下代碼: ? Integer n = (Integer)(two)。 ? } Hashtable類的常用方法 ? Hashtable類的常用方法如下: ? public Hashtable():創(chuàng)建具有默認容量和裝載因子為 。 ? public Hashtable(int initialCapacity,float loadFactor):創(chuàng)建具有默認容量和指定裝載因子散列表。 ? public boolean contains(Object o):判斷散列表是否有含有元素 o。 ? public boolean isEmpty():判斷散列表是否為空。 ? public Object remove(Object key):刪除關(guān)鍵字是 key的數(shù)據(jù)項。 ? elements()方法返回一個 Enumeration對象,實現(xiàn)遍歷散列表。 ? 散列表是個鏈接式列表的陣列,每個列表稱為一個散列表元,散列表為每個對象計算出一個整數(shù),稱為散列碼,不存在重復的多個元素;若要查找表中的某個對象的位置,只要計算出它的散列碼,再將它減去以散列表元的總數(shù)為模數(shù)的值,得出的數(shù)就是擁有該元素的散列表元的索引。在 Java中,使用加載因子決定何時要對散列表進行再散列。 ? HashSet(int initialCapacity,float loadFactor)。 Java增加了一個類LinkedHashSet,用于跟蹤添加給散列集的元素順序;其迭代器會按照元素的插入順序來訪問各個元素。我們通常都應(yīng)該使用HashSet,在我們需要排序的功能時,我們才使用 TreeSet。向量相當于動態(tài)的,可以存儲不同數(shù)據(jù)類型數(shù)據(jù)的數(shù)組。但是,Vector 的大小可以根據(jù)需要增大或縮小,以適應(yīng)創(chuàng)建 Vector 后進行添加或移除項的操作。 Vector類的常用方法 ? Vector類的常用方法如下: ? void add(Object o):將對象 o添加到向量的末尾; ? void add(int index Object o):將對象 o插入到向量的指定位置; ? void addElements(Object o):將對象 o添加到向量的末尾; ? boolean contains(Object o):判斷對象 o是否為向量的成員; ? Object elementAt(int index):獲取指定位置處的成員; ? Object get(int index):獲取此向量指定位置處的成員; ? Object firstElement():獲取此向量的第一個成員; 練習思考題 ? 下列哪個不是線性表( )。
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1