Java 如何设置列表的最大大小
我需要将列表的最大大小设置为10。 例如,像普通列表一样添加10个元素。但是当添加超过10个元素时,我需要替换它们,而不是添加Java 如何设置列表的最大大小,java,android,list,arraylist,collections,Java,Android,List,Arraylist,Collections,我需要将列表的最大大小设置为10。 例如,像普通列表一样添加10个元素。但是当添加超过10个元素时,我需要替换它们,而不是添加 Element 1 Element 2 Element 3 Element 4 Element 5 Element 6 Element 7 Element 8 Element 9 Element 10 现在,在添加元素11时,应该如下所示: Element 11 Element 2 Element 3 Element 4 Element 5 Element 6 Ele
Element 1
Element 2
Element 3
Element 4
Element 5
Element 6
Element 7
Element 8
Element 9
Element 10
现在,在添加元素11时,应该如下所示:
Element 11
Element 2
Element 3
Element 4
Element 5
Element 6
Element 7
Element 8
Element 9
Element 10
同样,在将另一个元素添加到列表后:
Element 12
Element 11
Element 3
Element 4
Element 5
Element 6
Element 7
Element 8
Element 9
Element 10
我怎样才能做到这一点谢谢您可以使用“Deque”(双端队列)而不是列表。这样,FIFO逻辑由数据结构为您处理 我没有在Java中使用它们,但它们似乎存在于Java6+中 另一个选项:在这里,您可以看到一个循环的ifoqueue,它似乎做了您想要做的事情。您可以使用“Deque”(双端队列)而不是列表。这样,FIFO逻辑由数据结构为您处理 我没有在Java中使用它们,但它们似乎存在于Java6+中
另一个选项:在这里,您可以看到一个循环的ifoqueue,它似乎可以做您想要做的事情。在列表周围做一个自定义包装怎么样: Kotlin:
class FiniteList<T>(private val size: Int) {
private val list = mutableListOf<T>()
fun add(item: T) {
if (list.size < size) {
list.add(item)
} else {
list.add(0, item)
list.removeLast()
}
}
//implement other methods
}
val finiteList = FiniteList<String>(10)
finiteList.add("Hello World!")
...
class FiniteList(私有值大小:Int){
private val list=mutableListOf()
趣味添加(项目:T){
如果(list.size
Java:
public class FiniteList<T> {
private List<T> list;
private int collectionSize;
public FiniteListJava(int size) {
collectionSize = size;
new ArrayList<>(size);
}
void add(T item) {
if (collectionSize > list.size()) {
list.add(item);
} else {
list.add(0, item);
list.remove(list.size() - 1);
}
}
//implement other methods
}
公共类FiniteList{
私人名单;
私人收藏;
公共FiniteListJava(整数大小){
集合大小=大小;
新ArrayList(大小);
}
无效添加(T项){
如果(collectionSize>list.size()){
列表。添加(项目);
}否则{
列表。添加(0,项);
list.remove(list.size()-1);
}
}
//实施其他方法
}
用法:
class FiniteList<T>(private val size: Int) {
private val list = mutableListOf<T>()
fun add(item: T) {
if (list.size < size) {
list.add(item)
} else {
list.add(0, item)
list.removeLast()
}
}
//implement other methods
}
val finiteList = FiniteList<String>(10)
finiteList.add("Hello World!")
...
val finiteList=finiteList(10)
添加(“你好,世界!”)
...
围绕列表制作一个自定义包装怎么样:
Kotlin:
class FiniteList<T>(private val size: Int) {
private val list = mutableListOf<T>()
fun add(item: T) {
if (list.size < size) {
list.add(item)
} else {
list.add(0, item)
list.removeLast()
}
}
//implement other methods
}
val finiteList = FiniteList<String>(10)
finiteList.add("Hello World!")
...
class FiniteList(私有值大小:Int){
private val list=mutableListOf()
趣味添加(项目:T){
如果(list.size
Java:
public class FiniteList<T> {
private List<T> list;
private int collectionSize;
public FiniteListJava(int size) {
collectionSize = size;
new ArrayList<>(size);
}
void add(T item) {
if (collectionSize > list.size()) {
list.add(item);
} else {
list.add(0, item);
list.remove(list.size() - 1);
}
}
//implement other methods
}
公共类FiniteList{
私人名单;
私人收藏;
公共FiniteListJava(整数大小){
集合大小=大小;
新ArrayList(大小);
}
无效添加(T项){
如果(collectionSize>list.size()){
列表。添加(项目);
}否则{
列表。添加(0,项);
list.remove(list.size()-1);
}
}
//实施其他方法
}
用法:
class FiniteList<T>(private val size: Int) {
private val list = mutableListOf<T>()
fun add(item: T) {
if (list.size < size) {
list.add(item)
} else {
list.add(0, item)
list.removeLast()
}
}
//implement other methods
}
val finiteList = FiniteList<String>(10)
finiteList.add("Hello World!")
...
val finiteList=finiteList(10)
添加(“你好,世界!”)
...