我有两个ArrayList
ArrayList<String> firstList = new ArrayList<>(Arrays.asList("king", "king", "queen", "jack", "queen"));
ArrayList<String> secondList = new ArrayList<>(Arrays.asList("one", "one", "one", "two", "one"));
在名为 firstList
的列表中我将使用 Set<String> hashSet = new HashSet<>(firstList);
删除重复项输出将为 "king", "queen", "jack"
我想做的是获取 secondList
上的位置等于 firstList
上的位置。
当前输出为(king & one), (queen, one), (jack, one)
我想要的输出是 (king, one), (queen, one), (jack, two)
如果你们中有人能帮助我,我将非常感激。
最佳答案
假设您的两个输入列表的长度始终相同,您可以执行一些简单的操作,例如:
public static void main(String[] args) {
List<String> firstList = new ArrayList<>(Arrays.asList("king", "king", "queen", "jack", "queen"));
List<String> secondList = new ArrayList<>(Arrays.asList("one", "one", "one", "two", "one"));
List<String> cards = new ArrayList<>();
List<String> positions = new ArrayList<>();
for(int i = 0; i< firstList.size(); i++){
String temp = firstList.get(i);
if(!cards.contains(temp)){
cards.add(temp);
positions.add(secondList.get(i));
}
}
System.out.println(cards);
System.out.println(positions);
}
关于java - 如果我从第一个 ArrayList 中删除了一个值,如何在两个 ArrayList 上获得相同的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55257000/