Java 最有效的数据存储对象,用于对最大数量的元素进行排队
我需要一个存储类型,我可以设置元素的最大数量,每当我向尾部添加一些东西时,头部会根据需要被截断,开销很低。如果有必要,我当然可以手动完成。范例 最大值=1000 用整数1-1000填充它:[1,2,…,9991000] 添加数字1000-1500:[500501,…,14991500] 这必须是尽可能便宜的操作,因为我会在这个时候运行多个线程,一个做录音。我不在乎在头部元素弹出时保留它们,我想在批量操作中去除它们 我检查了SDK中的队列类型,不确定哪种类型可以满足这些需求,可能是某种链接队列Java 最有效的数据存储对象,用于对最大数量的元素进行排队,java,android,algorithm,data-structures,Java,Android,Algorithm,Data Structures,我需要一个存储类型,我可以设置元素的最大数量,每当我向尾部添加一些东西时,头部会根据需要被截断,开销很低。如果有必要,我当然可以手动完成。范例 最大值=1000 用整数1-1000填充它:[1,2,…,9991000] 添加数字1000-1500:[500501,…,14991500] 这必须是尽可能便宜的操作,因为我会在这个时候运行多个线程,一个做录音。我不在乎在头部元素弹出时保留它们,我想在批量操作中去除它们 我检查了SDK中的队列类型,不确定哪种类型可以满足这些需求,可能是某种链接队列 感
感谢您的帮助使用环形缓冲区,也称为循环队列;这些可以实现为数组,因此它们特别便宜。有关Java中的实现,请参阅。使用环形缓冲区,也称为循环队列;这些可以实现为数组,因此它们特别便宜。有关Java的实现,请参阅