本文共 870 字,大约阅读时间需要 2 分钟。
用法很简单,只需引入如下工具类,然后调用相应方法即可。
//Fumiama 20210601//ByteArrayQueue.kt//FIFO队列class ByteArrayQueue { private var elements = byteArrayOf() val size get() = elements.size fun append(items: ByteArray) { elements += items } fun pop(num: Int = 1): ByteArray? { return if(num <= elements.size) { val re = elements.copyOfRange(0, num) elements = elements.copyOfRange(num, elements.size) re } else null } fun clear() { elements = byteArrayOf() } fun popAll(): ByteArray { val re = elements clear() return re } operator fun plusAssign(items: ByteArray) = append(items)}
var buffer = ByteArrayQueue()buffer += "test data".toByteArray() //入队buffer.pop() //出队一个buffer.pop(4) //出队4个buffer.popAll() //全部出队buffer.clear() //清空队列
转载地址:http://zhmws.baihongyu.com/