Compartir a través de


Collections.Seq (Módulo de F#)

Operaciones básicas con secuencias enumerables.

Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Collections

Ensamblado: FSharp.Core (en FSharp.Core.dll)

module Seq

Comentarios

Para obtener información general sobre las secuencias en F#, vea Secuencias (F#).

Valores

Valor

Descripción

append : seq<'T> -> seq<'T> -> seq<'T>

Encapsula las dos enumeraciones especificadas como una sola enumeración concatenada.

average : seq<^T> -> ^T

Devuelve el promedio de los elementos de la secuencia.

averageBy : ('T -> ^U) -> seq<'T> -> ^U

Devuelve el promedio de los resultados que se generan aplicando la función a cada uno de los elementos de la secuencia.

cache : seq<'T> -> seq<'T>

Devuelve una secuencia correspondiente a una versión almacenada en memoria caché de la secuencia de entrada.

cast : IEnumerable -> seq<'T>

Encapsula una secuencia de System.Collections débilmente tipada como una secuencia con tipo.

choose : ('T -> 'U option) -> seq<'T> -> seq<'U>

Aplica la función especificada a cada elemento de la lista. Devuelve la lista de los resultados para cada elemento donde la función devuelva Some.

collect : ('T -> 'Collection) -> seq<'T> -> seq<'U>

Aplica la función especificada a cada elemento de la secuencia y concatena todos los resultados.

compareWith : ('T -> 'T -> int) -> seq<'T> -> seq<'T> -> int

Compara dos secuencias elemento por elemento mediante la función de comparación especificada.

concat : seq<'Collection> -> seq<'T>

Combina la enumeración de enumeraciones especificada como una sola enumeración concatenada.

countBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * int>

Aplica una función de generación de claves a cada elemento de una secuencia y devuelve una secuencia que genera claves únicas así como el número de veces que aparecen en la secuencia original.

delay : (unit -> seq<'T>) -> seq<'T>

Devuelve una secuencia que se compila a partir de la especificación retrasada dada de una secuencia.

distinct : seq<'T> -> seq<'T>

Devuelve una secuencia que no contiene ninguna entrada duplicada según las comparaciones genéricas de hash y de igualdad en las entradas. Si un elemento aparece varias veces en la secuencia, se descartan las apariciones posteriores.

distinctBy : ('T -> 'Key) -> seq<'T> -> seq<'T>

Devuelve una secuencia que no contiene ninguna entrada duplicada según las comparaciones genéricas de hash e igualdad en las claves devueltas por la función de generación de claves especificada. Si un elemento aparece varias veces en la secuencia, se descartan las apariciones posteriores.

empty : seq<'T>

Crea una secuencia vacía.

exactlyOne: seq<'T> -> 'T

Devuelve el único elemento de la secuencia.

exists : ('T -> bool) -> seq<'T> -> bool

Comprueba si algún elemento de la secuencia satisface el predicado especificado.

exists2 : ('T1 -> 'T2 -> bool) -> seq<'T1> -> seq<'T2> -> bool

Comprueba si algún par de elementos correspondientes de las secuencias de entrada cumple el predicado especificado.

filter : ('T -> bool) -> seq<'T> -> seq<'T>

Devuelve una nueva colección que contiene solo los elementos de la colección para los cuales el predicado especificado devuelve true.

find : ('T -> bool) -> seq<'T> -> 'T

Devuelve el primer elemento para el cual la función especificada devuelve true.

findIndex : ('T -> bool) -> seq<'T> -> int

Devuelve el índice del primer elemento para el cual la función especificada devuelve true.

fold : ('State -> 'T -> 'State) -> 'State -> seq<'T> -> 'State

Aplica una función a cada elemento de la colección y subprocesa un argumento acumulador durante el cálculo. Si la función de entrada es f y los elementos son i0...iN,, esta función calcula f (... (f s i0)...) iN.

forall : ('T -> bool) -> seq<'T> -> bool

Comprueba si todos los elementos de la secuencia satisfacen el predicado especificado.

forall2 : ('T1 -> 'T2 -> bool) -> seq<'T1> -> seq<'T2> -> bool

Comprueba si todos los pares de elementos de las dos secuencias satisfacen el predicado especificado. Si una secuencia es más corta que la otra, se omiten los elementos restantes de la secuencia más larga.

groupBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * seq<'T>>

Aplica una función de generación de claves a cada elemento de una secuencia y genera una secuencia de claves únicas. Cada clave única también contiene una secuencia de todos los elementos correspondientes a esta clave.

head : seq<'T> -> 'T

Devuelve el primer elemento de la secuencia.

init : int -> (int -> 'T) -> seq<'T>

Genera una nueva secuencia que, cuando se itera, devuelve elementos sucesivos mediante una llamada a la función especificada, hasta el número indicado. Los resultados de llamar a la función no se guardan; es decir, la función se vuelve a aplicar si es necesario para regenerar los elementos. A la función se le pasa el índice del elemento que se está generando.

initInfinite : (int -> 'T) -> seq<'T>

Genera una nueva secuencia que, cuando se itera, devolverá elementos sucesivos mediante una llamada a la función especificada. Los resultados de llamar a la función no se guardarán; es decir, la función se volverá a aplicar si es necesario para regenerar los elementos. A la función se le pasa el índice del elemento que se está generando.

isEmpty : seq<'T> -> bool

Comprueba si una secuencia contiene elementos.

iter : ('T -> unit) -> seq<'T> -> unit

Aplica la función especificada a cada elemento de la colección.

iter2 : ('T1 -> 'T2 -> unit) -> seq<'T1> -> seq<'T2> -> unit

Aplica la función especificada a dos colecciones a la vez. Si una secuencia es más corta que la otra, se omiten los elementos restantes de la secuencia más larga.

iteri : (int -> 'T -> unit) -> seq<'T> -> unit

Aplica la función especificada a cada elemento de la colección. El entero que se pasa a la función indica el índice del elemento.

último : seq<'T> -> 'T

Devuelve el último elemento de la secuencia.

length : seq<'T> -> int

Devuelve la longitud de la secuencia.

map : ('T -> 'U) -> seq<'T> -> seq<'U>

Crea una nueva colección cuyos elementos son los resultados de aplicar la función especificada a cada uno de los elementos de la colección. Se aplicará la función especificada cuando se soliciten elementos usando el método MoveNext con los enumeradores recuperados del objeto.

map2 : ('T1 -> 'T2 -> 'U) -> seq<'T1> -> seq<'T2> -> seq<'U>

Crea una nueva colección cuyos elementos son los resultados de aplicar la función especificada a los pares de elementos correspondientes de las dos secuencias. Si una secuencia de entrada es más corta que la otra, se omiten los elementos restantes de la secuencia más larga.

mapi : (int -> 'T -> 'U) -> seq<'T> -> seq<'U>

Crea una nueva colección cuyos elementos son los resultados de aplicar la función especificada a cada uno de los elementos de la colección. El índice de entero que se pasa a la función indica el índice (a partir de 0) del elemento que se va a transformar.

max : seq<'T> -> 'T

Devuelve el mayor de todos los elementos de la secuencia, comparados mediante Operators.max.

maxBy : ('T -> 'U) -> seq<'T> -> 'T

Devuelve el mayor de todos los elementos de la secuencia, comparados mediante Operators.max en el resultado de la función.

min : seq<'T> -> 'T

Devuelve el menor de todos los elementos de la secuencia, comparados mediante Operators.min.

minBy : ('T -> 'U) -> seq<'T> -> 'T

Devuelve el menor de todos los elementos de la secuencia, comparados mediante Operators.min en el resultado de la función.

nth : int -> seq<'T> -> 'T

Calcula el elemento nth de la colección.

ofArray : 'T array -> seq<'T>

Muestra la matriz especificada como una secuencia.

ofList : 'T list -> seq<'T>

Muestra la lista especificada como una secuencia.

pairwise : seq<'T> -> seq<'T * 'T>

Devuelve una secuencia de cada elemento de la secuencia de entrada y su predecesor, con la excepción del primer elemento, que se devuelve únicamente como predecesor del segundo elemento.

pick : ('T -> 'U option) -> seq<'T> -> 'U

Aplica la función especificada a elementos sucesivos y devuelve el primer valor para el cual la función devuelve un valor Some.

readonly : seq<'T> -> seq<'T>

Crea un nuevo objeto de secuencia que delega en el objeto de secuencia especificado. De este modo, se garantiza que la secuencia original no pueda volver a detectarse ni sufrir una mutación mediante una conversión de tipo. Por ejemplo, si se especifica una matriz, la secuencia devuelta devolverá los elementos de la matriz pero no se podrá convertir el objeto de secuencia devuelto en una matriz.

reduce : ('T -> 'T -> 'T) -> seq<'T> -> 'T

Aplica una función a cada elemento de la secuencia y subprocesa un argumento acumulador durante el cálculo. Empieza aplicando la función a los dos primeros elementos. Después inserta el resultado en la función junto con el tercer elemento y así sucesivamente. Devuelve el resultado final.

scan : ('State -> 'T -> 'State) -> 'State -> seq<'T> -> seq<'State>

Es igual que Seq.fold, pero calcula a petición y devuelve la secuencia de resultados intermedios y finales.

singleton : 'T -> seq<'T>

Devuelve una secuencia que solo produce un elemento.

skip : int -> seq<'T> -> seq<'T>

Devuelve una secuencia que omite un número especificado de elementos de la secuencia subyacente y, a continuación, produce los elementos restantes de la secuencia.

skipWhile : ('T -> bool) -> seq<'T> -> seq<'T>

Devuelve una secuencia que, cuando se itera, omite elementos de la secuencia subyacente mientras el predicado especificado devuelva true y, a continuación, produce los elementos restantes de la secuencia.

sort : seq<'T> -> seq<'T>

Genera una secuencia ordenada por claves.

sortBy : ('T -> 'Key) -> seq<'T> -> seq<'T>

Aplica una función de generación de claves a cada elemento de una secuencia y genera una secuencia ordenada por claves. Las claves se comparan mediante la comparación genérica implementada por Operators.compare.

sum : seq<^T> -> ^T

Devuelve la suma de los elementos de la secuencia.

sumBy

Devuelve la suma de los resultados que se generan aplicando la función a cada uno de los elementos de la secuencia.

take : int -> seq<'T> -> seq<'T>

Devuelve los primeros elementos de la secuencia hasta un recuento especificado.

takeWhile : ('T -> bool) -> seq<'T> -> seq<'T>

Devuelve una secuencia que, cuando se itera, proporciona elementos de la secuencia subyacente mientras el predicado especificado devuelva true y, a continuación, no devuelve ningún elemento más.

toArray : seq<'T> -> 'T []

Crea una matriz a partir de la colección especificada.

toList : seq<'T> -> 'T list

Crea una lista a partir de la colección especificada.

truncate : int -> seq<'T> -> seq<'T>

Devuelve una secuencia que, cuando se enumera, devuelve un número máximo especificado de elementos.

tryFind : ('T -> bool) -> seq<'T> -> 'T option

Devuelve el primer elemento para el que la función dada devuelve true o None, si no existe ese elemento.

tryFindIndex : ('T -> bool) -> seq<'T> -> int option

Devuelve el índice del primer elemento de la secuencia que cumple el predicado especificado, o bien None si no existe ese elemento.

tryPick : ('T -> 'U option) -> seq<'T> -> 'U option

Aplica la función especificada a elementos sucesivos y devuelve el primer valor para el cual la función devuelve un valor Some.

unfold : ('State -> 'T * 'State option) -> 'State -> seq<'T>

Devuelve una secuencia que contiene los elementos generados por el cálculo especificado.

donde : ('T -> bool) -> seq<'T> -> seq<'T>

Devuelve una nueva colección que contiene solo los elementos de la colección para los cuales el predicado especificado devuelve true. Un sinónimo de Seq.filter.

windowed : int -> seq<'T> -> seq<'T []>

Devuelve una secuencia que genera ventanas deslizantes de los elementos contenedores extraídos de la secuencia de entrada. Cada ventana se devuelve como una matriz nueva.

zip : seq<'T1> -> seq<'T2> -> seq<'T1 * 'T2>

Combina las dos secuencias en una lista de pares. No es necesario que las dos secuencias tengan la misma longitud: cuando se agota una secuencia, se omiten los elementos restantes de la otra secuencia.

zip3 : seq<'T1> -> seq<'T2> -> seq<'T3> -> seq<'T1 * 'T2 * 'T3>

Combina las tres secuencias en una lista de triples. No es necesario que las secuencias tengan la misma longitud: cuando se agota una secuencia, se omiten los elementos restantes de las otras secuencias.

Plataformas

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Información de versiones

Versiones de la biblioteca básica de F#

Se admite en: 2.0, 4.0, portables

Vea también

Referencia

Microsoft.FSharp.Collections (Espacio de nombres de F#)

Secuencias (F#)

Collections.seq<'T> (Abreviatura de tipo de F#)