Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

interface CharSequence implementa metodos?

Estava estudando a interface CharSequence que foi mostrada na aula, e percebi que ela implementa alguns metodos, mas, até onde eu tinha entendido, as interfaces não implementam nenhum método. Por que neste caso é diferente?

Segue um exemplo:

public default IntStream chars() {
        class CharIterator implements PrimitiveIterator.OfInt {
            int cur = 0;

            public boolean hasNext() {
                return cur < length();
            }

            public int nextInt() {
                if (hasNext()) {
                    return charAt(cur++);
                } else {
                    throw new NoSuchElementException();
                }
            }

            @Override
            public void forEachRemaining(IntConsumer block) {
                for (; cur < length(); cur++) {
                    block.accept(charAt(cur));
                }
            }
        }

        return StreamSupport.intStream(() ->
                Spliterators.spliterator(
                        new CharIterator(),
                        length(),
                        Spliterator.ORDERED),
                Spliterator.SUBSIZED | Spliterator.SIZED | Spliterator.ORDERED,
                false);
    }
1 resposta
solução!

Leonardo. No Java 8 entraram os default methods que são métodos implementados em uma interface