Информация об изменениях

Сообщение Re[3]: стыдно....но спрошу от 17.03.2017 9:01

Изменено 17.03.2017 9:27 StanislavK

Re[3]: стыдно....но спрошу
Здравствуйте, bzig, Вы писали:

B>Ловко ты сделал вид, что списки всегда ArrayList

Правда ловко
тогда так:

public static void main(String... args) {
    List<Integer> ints = Arrays.asList(-100, -90, -2, 0, 3, 50);
    Iterator<Integer> it = ints.iterator();
    Integer prev = null;
    Integer value = it.next();
    Integer next = it.next();
    do {
        Integer refVal = getRefVal(value, prev, next);
        System.out.println("value: " + value + ", refVal: " + refVal);

        prev = value;
        value = next;
        next = it.hasNext() ? it.next() : null;
    } while ( it.hasNext() );
}

private static Integer getRefVal(Integer cur, Integer prev, Integer next) {
    Integer result = null;
    if ( cur < 0 &&  next != null ) {
        result = next;
    } else if ( cur > 0 && prev != null ) {
        result = prev;
    }
    return result;
}
Re[3]: стыдно....но спрошу
Здравствуйте, bzig, Вы писали:

B>Ловко ты сделал вид, что списки всегда ArrayList

Правда ловко
тогда так:

public static void main(String... args) {
    List<Integer> ints = Arrays.asList(-100, -90, -2, 0, 3, 50);
    Iterator<Integer> it = ints.iterator();
    Integer prev = null;
    Integer value = it.next();
    Integer next = it.next();
    do {
        Integer refVal = getRefVal(value, prev, next);
        System.out.println("value: " + value + ", refVal: " + refVal);

        prev = value;
        value = next;
        next = it.hasNext() ? it.next() : null;
    } while ( value != null );
}

private static Integer getRefVal(Integer cur, Integer prev, Integer next) {
    Integer result = null;
    if ( cur < 0 &&  next != null ) {
        result = next;
    } else if ( cur > 0 && prev != null ) {
        result = prev;
    }
    return result;
}