Используйте индекс определенного элемента, чтобы получить элемент из другого списка (лямбда-нотация) - PullRequest
0 голосов
/ 06 декабря 2018

Я искал в Интернете и не нашел ответа.Я могу сделать это с помощью for-loop, но для удобства чтения я попробовал это с лямбда-нотациями, но я не мог понять, как это сделать.

У меня есть список строк и список списковсо строками.Когда я даю строковое имя и строковое значение, он должен искать по переменным для этой строки, а когда она соответствует (скажем, по индексу 2), она должна проходить через вероятности и в каждом списке в этом списке проверьте, равно ли значение индекса 2 заданному строковому значению.Если это так, он должен удалить индекс, если нет - удалить весь список (один элемент из вероятности ).Я могу сделать это с помощью for-loop следующим образом:

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);
                }
            }
        }
    }
}

Короче говоря, мне было интересно, возможно ли это сделать с помощью лямбда-нотаций, поскольку я не смог найти пример, где вы ищетеэлемент в списке, и посмотрите в других списках на индекс, элемент был найден.В сочетании с удалением из списка, в котором вы выполняете итерацию, я не смог заставить его работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...