Esta actividad no es para entregar.
Crea la clase edd.util.ListsAndIterators con los métodos que se describen a continuación:
public static <T> List<T> duplicate(List<T> list)
Escribe el método estático duplicate() que recibe una lista genérica list y devuelve una nueva lista con todos los elementos de list duplicados. Por ejemplo, si la lista de entrada es: [1, 2, 3], la salida sería: [1, 1, 2, 2, 3, 3].
public static <T> List<T> consecute(List<T> list)
Escribe el método estático consecute() que recibe una lista genérica list y devuelve una nueva lista en donde el primer elemento de list aparece una sola vez, el segundo elemento aparece dos veces, el tercer elemento aparece tres veces, y así sucesivamente. Por ejemplo, si la lista de entrada es: [1, 2, 3, 4], la salida sería: [1, 2, 2, 3, 3, 3, 4, 4, 4, 4].
public static <T> List<T> removeDuplicates(List<T> list)
Escribe el método estático removeDuplicates() que recibe una lista genérica list y devuelve una nueva lista con los mismos elementos que list pero eliminando los elementos repetidos. Por ejemplo, si la lista de entrada es: [1, 2, 2, 1, 4, 2, 4, 3], la salida sería: [1, 2, 4, 3].
public static Iterator<Integer> pow2(int n)
Escribe el método estático pow2() que recibe un entero n y devuelve un iterador de enteros que produce las primeras n potencias de dos. Por ejemplo, si la entrada es 4, devuelve un iterador que en su momento producirá 1, 2, 4 y 8. El método remove() del iterador devuelto debe arrojar la excepción UnsupportedOperationException.
public static Iterator<Integer> primes(int max)
Escribe el método estático primes() que recibe un entero max y devuelve un iterador de enteros que produce todos los números primos menores o iguales a max. Por ejemplo, si la entrada es 10, devuelve un iterador que en su momento producirá 2, 3, 5 y 7. El método remove() del iterador devuelto debe arrojar la excepción UnsupportedOperationException.
public static Iterator<Integer> squares(int[] array)
Escribe el método estático squares() que recibe un arreglo de enteros array y devuelve un iterador de enteros que produce los valores de array elevados al cuadrado. Por ejemplo, si la entrada es el arreglo [1, 2, 3], devuelve un iterador que en su momento producirá 1, 4 y 9. El método remove() del iterador devuelto debe arrojar la excepción UnsupportedOperationException.
Archivos útiles: