📄 circularqueue.java
字号:
/* * Copyright (c) 2000 Lyrisoft Solutions, Inc. * Used by permission */package com.lyrisoft.util;import java.util.LinkedList;import java.util.Iterator;public class CircularQueue { private int _size; private LinkedList _list; public CircularQueue(int size) { _size = size; _list = new LinkedList(); } public synchronized void push(Object o) { if (_list.size() >= _size) { _list.removeFirst(); } _list.add(o); } public synchronized Object pop(Object o) { return _list.removeFirst(); } public synchronized Object peek(Object o) { return _list.getFirst(); } public synchronized Object get(int idx) { return _list.get(idx); } public synchronized int size() { return _list.size(); } public Iterator iterator() { return _list.iterator(); } public static void main(String[] args) { CircularQueue q = new CircularQueue(3); q.push("1"); q.push("2"); q.push("3"); for (Iterator i = q.iterator(); i.hasNext(); ) { System.err.println("> " + i.next()); } System.err.println(); q.push("4"); q.push("5"); for (Iterator i = q.iterator(); i.hasNext(); ) { System.err.println("> " + i.next()); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -