java—使用特定元素的索引从另一个列表中获取项目(lambda表示法)

91zkwejq  于 2021-06-30  发布在  Java
关注(0)|答案(0)|浏览(337)

我在网上搜索了一下,没有找到任何答案。我可以用for循环来实现它,但是为了可读性,我尝试用lambda符号来实现它,但是我不知道如何实现它。
我有一个字符串列表和一个带字符串的列表。当我给出一个字符串名和一个字符串值时,它应该在vars中搜索该字符串,当它有一个匹配项时(比如在索引2上),它应该检查概率,并在这个列表中的每个列表上检查索引2上的值是否等于给定的字符串值。如果是,它应该删除索引,如果不是,它应该删除整个列表(一个概率元素)。我可以用for循环来实现这一点,如下所示:

private ArrayList<String> vars = new ArrayList();
private ArrayList<ArrayList<String>> probabilities = new ArrayList();
private String v_name = "coughing";
private String v_value = "positive";

public void someFunction(){     
    for(int i=0; i<vars.size(); i++){
        if(vars.get(i).equals(v_name)){
            for(int j=probabilities.size()-1; j>=0; j--){
                if(probabilities.get(j).get(i).equals(v_value)){
                    probabilities.get(j).remove(i);
                } else {
                    probabilities.remove(j);
                }
            }
        }
    }
}

简而言之,我想知道是否可以用lambda符号来实现这一点,因为我找不到一个例子,在列表中搜索一个元素,然后在其他列表中找到该元素的索引。在一个列表中,如果你正在迭代删除配对我无法使它工作。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题