我在网上搜索了一下,没有找到任何答案。我可以用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符号来实现这一点,因为我找不到一个例子,在列表中搜索一个元素,然后在其他列表中找到该元素的索引。在一个列表中,如果你正在迭代删除配对我无法使它工作。
暂无答案!
目前还没有任何答案,快来回答吧!