public static <T> Iterator<T> dropRight(Iterator<T> self, int num) {
        List<T> result = dropRight(toList(self), num);
        return result.listIterator();
    }
public static < T > Iterator < T > dropRight ( Iterator < T > self , int num ) { List < T > result = dropRight ( toList ( self ) , num ) ; return result . listIterator ( ) ; }
Drops the given number of elements from the tail of this Iterator.
<pre class="groovyTestCase">
def obliterator = "obliter8".iterator()
assert abc.dropRight(-1) == ['o', 'b', 'l', 'i', 't', 'e', 'r', '8']
assert abc.dropRight(0) == ['o', 'b', 'l', 'i', 't', 'e', 'r', '8']
assert abc.dropRight(1) == ['o', 'b', 'l', 'i', 't', 'e', 'r']
assert abc.dropRight(4) == ['o', 'b', 'l', 'i']
assert abc.dropRight(7) == ['o']
assert abc.dropRight(8) == []
assert abc.dropRight(9) == []
</pre>

@param self the original Iterator
@param num  the number of elements to drop
@return an Iterator consisting of all the elements of this Iterator minus the last <code>num</code> elements,
or an empty Iterator if it has less then <code>num</code> elements.
@since 2.4.0