java - 如果我从第一个 ArrayList 中删除了一个值,如何在两个 ArrayList 上获得相同的位置

标签 java arraylist

我有两个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/

相关文章:

枚举中的Java变量返回函数类型

java - 非 Java 程序员进行 Android 开发的最快途径

java - 猜谜游戏java类的问题~

java - 无法在java中添加两个列表的内容

grails - 返回列表的Grails taglib

java - 使用 DI 的类只能通过 DI 创建吗?

java - xml中替换字符时如何防止ant构建改变国家字符

java - 数组列表的浅拷贝

java - 我怎样才能轻松地将 json 转换为自定义类型的 ArrayList?

java - 在方法中发送一组对象?