10.10(Queue类)10.6节给出一个Stock类,设计一个名为Queue的类用于存储整数
- 题目
- 程序
- 破题
- 代码
- Test10.java
- Test10_Queue.java
- UML
题目
程序
Test10.java:测试程序
Test10_Queue.java:构造程序
破题
以数组形式完成一个队列
代码
Test10.java
public class Test10 {public static void main(String[] args) {Test10_Queue queue = new Test10_Queue();for (int i = 1 ; i <= 20 ; i++){queue.enqueue(i);}for (int i = 1 ; i <= 20 ; i++){System.out.print(queue.dequeue()+ " ");}}
}
Test10_Queue.java
public class Test10_Queue {private int[] element;private int size = 0;public Test10_Queue(){element = new int[8];}public void enqueue(int v){if (size == element.length){element = enlarge(element);}element[size] = v;size++;}public int[] enlarge(int[] arr){int[] temp = new int[size * 2];for (int i = 0 ; i < size ; i++){temp[i] = arr[i];}arr = temp;return arr;}public int dequeue(){int temp = element[0];System.arraycopy(element, 1, element, 0, size);if (size == element.length){element[size--] = 0;}return temp;}public boolean empty(){boolean bool = false;if (element[0] == 0){bool = true;}return bool;}public int getSize(){// 这里的队列没有指代清楚到底是队列中含有元素的多少还是容量// 这里我处理为队列中元素的数量return size;}
}