diff --git a/app/src/main/java/ru/project/collection/MyLinkedList.java b/app/src/main/java/ru/project/collection/MyLinkedList.java index a919309..abbd9c5 100644 --- a/app/src/main/java/ru/project/collection/MyLinkedList.java +++ b/app/src/main/java/ru/project/collection/MyLinkedList.java @@ -1,11 +1,14 @@ package ru.project.collection; import java.util.Arrays; +import java.util.stream.IntStream; +import java.util.stream.Stream; public class MyLinkedList implements MyList { private Node head; private int size; + @Override public void add(T value) { if (head == null) { this.head = new Node<>(value); @@ -19,6 +22,7 @@ public class MyLinkedList implements MyList { size++; } + @Override public T get(int index) { int currentIndex = 0; Node temp = head; @@ -34,6 +38,7 @@ public class MyLinkedList implements MyList { throw new IllegalArgumentException(); } + @Override public void remove(int index) { if (index < 0 || index >= size) { throw new IndexOutOfBoundsException(); @@ -57,6 +62,7 @@ public class MyLinkedList implements MyList { } } + @Override public T set(int index, T value) { if (index < 0 || index >= size) { throw new IllegalArgumentException(); @@ -79,6 +85,8 @@ public class MyLinkedList implements MyList { public boolean isEmpty() { return size == 0; } + + @Override public void addAll(MyList collection) { if (collection == null || collection.isEmpty()) { return; @@ -101,6 +109,11 @@ public class MyLinkedList implements MyList { return Arrays.toString(res); } + @Override + public Stream stream() { + return IntStream.range(0, size()).mapToObj(this::get); + } + private static class Node { private T value; private Node next; diff --git a/app/src/main/java/ru/project/collection/MyList.java b/app/src/main/java/ru/project/collection/MyList.java index 27af25d..70411d1 100644 --- a/app/src/main/java/ru/project/collection/MyList.java +++ b/app/src/main/java/ru/project/collection/MyList.java @@ -1,5 +1,7 @@ package ru.project.collection; +import java.util.stream.Stream; + public interface MyList { void add(T element); @@ -13,5 +15,8 @@ public interface MyList { int size(); boolean isEmpty(); + void addAll(MyList collection); + + Stream stream(); }