# last property

1. @override

E get last
override

The last element.

Throws a StateError if `this` is empty. Otherwise may iterate through the elements and returns the last one seen. Some iterables may have more efficient ways to find the last element (for example a list can directly access the last element, without iterating through the previous ones).

## Implementation

    @override
    E get last => _list.last;

1. @override

set last (E value)
override

The last element of the list.

The list must be non-empty when accessing its last element.

The last element of a list can be modified, unlike an Iterable. A `list.last` is equivalent to `theList[theList.length - 1]`, both for getting and setting the value.

    final numbers = <int>[1, 2, 3];
    print(numbers.last); // 3
    numbers.last = 10;
    print(numbers.last); // 10
    numbers.clear();
    numbers.last; // Throws.

## Implementation

    @override
    set last(E value) {
      _list.last = value;
    }