📄 list 群体.txt
字号:
015: }
016: }
017:
018: public static void main(String args[]) {
019: // Construct the container
020: ArrayList charts = new ArrayList();
021:
022: // Insert some Data objects
023: charts.add(new Chart(11013, "Morehead City Hrbr ", 12500));
024: charts.add(new Chart(11552, "Neuse River ", 40000));
025: charts.add(new Chart(11428, "Dry Tortugas ", 30000));
026: charts.add(new Chart(11420, "Havana to Tampa Bay", 470940));
027: charts.add(new Chart(25641, "Virgin Islands ", 100000));
028: charts.add(new Chart(26341, "Bermuda Islands ", 50000));
029:
030: System.out.println("/nCharts shown by an Iterator object");
031: showContainer(charts);
032:
033: // Erase first object
034: Iterator I = charts.iterator(); // Get an Iterator object
035: if (I.hasNext()) { // Always call hasNext() and
036: Chart c = (Chart)I.next(); // next() before
037: I.remove(); // calling remove()
038: }
039: System.out.println("/nAfter removing first object");
040: showContainer(charts);
041:
042: // Use Iterator to remove all objects
043: I = charts.iterator(); // Get a fresh Iterator
044: while (I.hasNext()) {
045: I.next(); // Don't need to save returned object
046: I.remove(); // Removes object last returned by next()
047: }
048: System.out.println("/nAfter removing all objects");
049: System.out.println("Container size = " + charts.size());
050: }
051: }
Return to top
--------------------------------------------------------------------------------
List 群体 List.10 LinkedListDemo/LinkedListDemo.java
Return to top
001: import java.util.List;
002: import java.util.LinkedList;
003: import java.util.ListIterator;
004: import java.util.Collections;
005: import Chart;
006:
007: class LinkedListDemo {
008:
009: static final boolean FORWARD = true;
010: static final boolean REVERSE = false;
011:
012: // Display a LinkedList using a ListIterator
013: // in forward or reverse order
014: public static void showContainer(List c, boolean forward) {
015: Chart achart;
016: if (forward) {
017: // Show in forward order
018: ListIterator I = c.listIterator();
019: while (I.hasNext()) {
020: achart = (Chart)I.next();
021: System.out.println(achart.toString());
022: }
023: } else {
024: // Show in reverse order
025: ListIterator I = c.listIterator(c.size());
026: while (I.hasPrevious()) {
027: achart = (Chart)I.previous();
028: System.out.println(achart.toString());
029: }
030: }
031: }
032:
033: public static void main(String args[]) {
034: // Construct the container
035: LinkedList charts = new LinkedList(); // Can't specify size
036: Chart achart; // For accessing the container's objects
037:
038: // Insert some Data objects
039: charts.add(new Chart(11013, "Morehead City Hrbr ", 12500));
040: charts.add(new Chart(11552, "Neuse River ", 40000));
041: charts.add(new Chart(11428, "Dry Tortugas ", 30000));
042: charts.add(new Chart(11420, "Havana to Tampa Bay", 470940));
043: charts.add(new Chart(25641, "Virgin Islands ", 100000));
044: charts.add(new Chart(26341, "Bermuda Islands ", 50000));
045:
046: // Sort the LinkedList container
047: Collections.sort(charts);
048:
049: // Display head and tail objects
050: System.out.println("/nHead object is:");
051: achart = (Chart)charts.getFirst();
052: System.out.println(achart.toString());
053: System.out.println("/nTail object is:");
054: achart = (Chart)charts.getLast();
055: System.out.println(achart.toString());
056:
057: // Show list in forward and reverse order
058: System.out.println("/nList in forward order");
059: showContainer(charts, FORWARD);
060: System.out.println("/nList in reverse order");
061: showContainer(charts, REVERSE);
062: }
063: }
Return to top
--------------------------------------------------------------------------------
List 群体 List.11 ListIterator.txt
Return to top
001: // Inherited Iterator methods
002: boolean hasNext();
003: Object next();
004: void remove();
005: // ListIterator interface methods
006: boolean hasPrevious();
007: Object previous();
008: int nextIndex();
009: int previousIndex();
010: void set(Object o);
011: void add(Object o);
Return to top
--------------------------------------------------------------------------------
List 群体 List.12 BinaryDemo/BinaryDemo.java
Return to top
001: import java.util.List;
002: import java.util.Comparator;
003: import java.util.ArrayList;
004: import java.util.Collections;
005: import Chart;
006:
007: class BinaryDemo {
008:
009: // Display a List container's contents
010: public static void showContainer(List c) {
011: for (int i = 0; i < c.size(); i++)
012: System.out.println(c.get(i).toString());
013: }
014:
015: public static void main(String args[]) {
016: // Construct the container
017: ArrayList charts = new ArrayList();
018:
019: // Insert some Data objects
020: charts.add(new Chart(11013, "Morehead City Hrbr ", 12500));
021: charts.add(new Chart(11552, "Neuse River ", 40000));
022: charts.add(new Chart(11428, "Dry Tortugas ", 30000));
023: charts.add(new Chart(11420, "Havana to Tampa Bay", 470940));
024: charts.add(new Chart(25641, "Virgin Islands ", 100000));
025: charts.add(new Chart(26341, "Bermuda Islands ", 50000));
026:
027: // Display all objects if none requested
028: if (args.length == 0) {
029: System.out.println("/nContainer contents:");
030: showContainer(charts);
031: System.out.println("/nEnter a chart number to find");
032: System.out.println("ex. java BinaryDemo 11428");
033: } else {
034:
035: // Search container using Collections.binarySearch()
036: try {
037: // Preparations for a binarySearch();
038: int num = Integer.parseInt(args[0]); // Get chart number
039: Comparator comp = Chart.byNumber(); // Create Comparator
040: Chart key = new Chart(num, "", 0); // Create search key
041: Collections.sort(charts, comp); // Sort container
042:
043: // Search the container for the key object
044: int index = Collections.binarySearch(charts, key, comp);
045: if (index < 0)
046: System.out.println("Chart #" + args[0] + " not found");
047: else
048: System.out.println(charts.get(index)); // Show chart
049: }
050: catch (NumberFormatException e) {
051: System.out.println("Error in argument " + e.getMessage());
052: }
053: }
054: }
055: }
Return to top
--------------------------------------------------------------------------------
List 群体 List.13 StackDemo/Stack.java
Return to top
001: import java.util.Collection;
002: import java.util.LinkedList;
003:
004: class StackEmptyException extends Exception {
005: StackEmptyException(String s) { super(s); }
006: }
007:
008: public class Stack extends LinkedList {
009: // Constructors
010: public Stack() { super(); }
011: public Stack(Collection c) { super(c); }
012: // Public methods
013: public void push(Object o) {
014: addLast(o);
015: }
016: public Object pop() throws StackEmptyException {
017: if (size() == 0)
018: throw new StackEmptyException("pop on empty stack");
019: return removeLast();
020: }
021: public Object peek() throws StackEmptyException {
022: if (size() == 0)
023: throw new StackEmptyException("peek on empty stack");
024: return getLast();
025: }
026: // Unsupported methods (incomplete -- see text)
027: public final Object removeFirst() {
028: throw new UnsupportedOperationException();
029: }
030: public final void addFirst(Object o) {
031: throw new UnsupportedOperationException();
032: }
033: }
Return to top
--------------------------------------------------------------------------------
List 群体 List.14 StackDemo/StackDemo.java
Return to top
001: import Stack;
002:
003: class StackDemo {
004: public static void main(String args[]) {
005: String s;
006: try {
007: Stack fruitStack = new Stack();
008: fruitStack.push("Apples");
009: fruitStack.push("Peaches");
010: fruitStack.push("Pumpkin");
011: // Enable following to force an unchecked exception
012: // fruitStack.removeFirst();
013: // Peek at top of stack
014: s = (String)fruitStack.peek();
015: System.out.println("/nTop of stack = " + s);
016: // Pop all objects from stack
017: System.out.println("/nPopping all objects:");
018: while (!fruitStack.isEmpty()) {
019: s = (String)fruitStack.pop();
020: System.out.println(s);
021: }
022: // Enable following to force a checked exception
023: // s = (String)fruitStack.pop();
024: } catch (StackEmptyException e) {
025: System.out.println("*** Error: " + e.getMessage());
026: }
027: }
028: }
Return to top
? 2003 by China
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -