gpt4 book ai didi

java - 将对象添加到 arraylist 唯一顺序 java

转载 作者:行者123 更新时间:2023-12-01 16:50:31 24 4
gpt4 key购买 nike

我正在尝试将对象添加到数组列表中,使其看起来像这样,

首先添加
1

第二个添加
1 2

第三个添加
3 1 2

第四个添加
3 1 2 4

第五个添加
5 3 1 2 4

这就是我到目前为止所拥有的

public deckOfCards() {
arr = new ArrayList<Card>();
}

public void add(T cardToAdd) { 

//reads as position 2
int middleOfDeck = (arr.size()/2);

//reads as position 3
int pos2 = (arr.size()/2)+1;

//reads as position 1
int pos3 = (arr.size()/2)-1;

//reads as position 4
int pos4 = (arr.size()/2)+2;

//reads as position 0
int pos5 = (arr.size()/2)-2;

arr.add(middleOfDeck, objToAdd);
arr.add(pos2, objToAdd);
arr.add(pos3, objToAdd);
arr.add(pos4, objToAdd);
arr.add(pos5, objToAdd);
}

这是我的测试

@Test
public void addTest() {
DeckOfCards<Cards> bb= new DecckOfCards<Cards>();
bb.add(new CardType("one", 1));
bb.add(new CardType("two", 2));
bb.add(new CardType("three", 3));
bb.add(new CardType("four", 4));
bb.add(new CardType("five", 5));


}

最佳答案

根据您的模式,您似乎正在交替插入列表的开头和结尾。如果是这样,逻辑就很简单:

public void add(T objToAdd) {
if (arr.size() % 2 == 0) {
arr.add(0, objToAdd);
} else {
arr.add(objToAdd);
}
}

关于java - 将对象添加到 arraylist 唯一顺序 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41049072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com