我正在阅读日志文件,但并非所有行都希望立即处理。我正在使用队列/缓冲区来存储等待处理的行。
定期扫描此队列以查找特定行 - 当找到它们时,它们会从队列中删除(它们可以在队列中的任何位置)。当没有找到特定的行时,将一行一行地从队列的开头取出进行处理。
因此,队列需要以下内容:
- 能够调整大小(或给人以印象)
- 从任何地方删除元素
- 添加元素(将始终位于队列的末尾)
- 被快速扫描
- 根据性能,有一个指向上次扫描位置的指针。
我最初编写代码时对 Java 或 API 几乎没有经验,并且只是使用了 ArrayList,因为我知道它会起作用(不一定是因为它是最佳选择)。
随着越来越多的日志需要处理,它的性能现在变得很差——那么,在这种情况下,您建议使用什么集合?也总是有可能写我自己的。
谢谢