Cómo usar iteradores de óxido

Cómo usar iteradores de óxido
Los iteradores son una característica de concreto en óxido. Son muy útiles cuando necesitas iterar sobre una secuencia de elementos. Por ejemplo, si está recordando los elementos en una matriz o vector, está utilizando un iterador.

Este artículo discutirá a los iteradores en Rust, cómo se implementan y cómo usarlos.

Iterador de óxido

Un iterador se refiere a una característica que le permite "caminar" por una secuencia de elementos. Como se mencionó, podría estar iterando sobre cada elemento en una matriz.

Los iteradores en óxido son perezosos. Esto significa que el iterador no necesita saber de antemano el número de elementos que "caminará". Determina el siguiente elemento si se solicita.

Rasgo iterador de óxido

Los iteradores son implementados por el rasgo de iterador definido en la biblioteca estándar de Rust. Esto significa que podemos usar el tipo de iterador en tipos primitivos o una colección personalizada proporcionando el tipo de rasgo y el siguiente método.

La sintaxis para el rasgo de iterador es como se muestra:

rasgo de pub iterador
tipo elemento;
FN NEXT (& MUT Self) -> Opción;

Para implementar el rasgo de iterador en los tipos personalizados, necesitamos definir el siguiente método, que devuelve un elemento a la vez envuelto como algunos () o ninguno cuando la iteración está completa.

Considere el siguiente código que implementa un iterador para una estructura personalizada:

structCount
actual_value: i32,

Impl cuenta
fnnew () -> self
Ser
actual_value: 0,



Impliterator para el recuento
typeItem = i32;
fnnext (& mutself) -> opción
en sí mismo.valor actual<5
ser.actual_value += 1;
RETRESTSOME (yo.valor actual);

Ninguno


fnmain ()

Aquí, tenemos una estructura que tiene un valor de i32. El siguiente es un constructor de recuento para la estructura. También implementamos un iterador para la estructura utilizando la siguiente función. Esto devuelve el siguiente elemento en la secuencia.

Nota: El valor de retorno es la opción.

Esto nos permite devolver ninguno si no hay el siguiente elemento.

Entonces, podemos usar este iterador como:

Porque yo en cuenta :: new ()
println!"""", i);

Conclusión

Este artículo discutió la naturaleza del iterador de óxido y su importancia. Además, profundizamos en el rasgo de iterador de óxido y los métodos para implementar el iterador de óxido en tipos personalizados. Esperamos que hayas encontrado este artículo útil. Consulte los otros artículos de Sugerencia de Linux para obtener más consejos e información.