Tengo un List<int>
y necesito contar cuántos elementos tiene (valor < 5) - ¿cómo puedo hacer esto?Elementos de conteo con int <5 en la lista <T>
Respuesta
List<int> list = ...
int count = list.Where(x => x < 5).Count();
Algo como esto:
var count = myList.Where(x => x < 5).Count();
Prueba esto:
int c = myList.Where(x=>x<5).Count();
La opción más corta:
myList.Count(v => v < 5);
Esta sería también hacer:
myList.Where(v => v < 5).Count();
+1 En realidad realmente me gusta el método posterior, ya que son bastante equivalentes en cuanto al rendimiento y creo que es un poco más claro lo que está sucediendo aquí. – ForbesLindesay
A diferencia de otras respuestas, esto hace que en una llamada al método usando esta sobrecarga de la countextension method:
using System.Linq;
...
var count = list.Count(x => x < 5);
Tenga en cuenta que dado que los métodos de extensión LINQ se definen en el System.Linq
espacio de nombres puede que tenga que añadir una declaración utilizando y referencia al System.Core
si aún no está allí (debería ser).
Ver también: Extension methods defined by the Enumerable
class.
+1 solo uno sin la cláusula where externa. –
+1 porque fue un minuto antes que la respuesta aceptada de abatischchev;) – Abel
@Daniel: Solo uno, sí :)) – abatishchev
Try -
var test = new List<int>();
test.Add(1);
test.Add(6);
var result = test.Count(i => i < 5);
int count = list.Count(i => i < 5);
list.Where(x => x < 5).Count()
int c = 0;
for (i = 0; i > list.Count; i++)
{
// The "for" is check all elements that in list.
if (list[i] < 5)
{
c = c + 1; // If the element is smaller than 5
}
}
+1 Por ser la única respuesta que no utiliza LINQ. Aunque hubiera preferido el uso de "foreach" en lugar de "para". Incluso mejor sería un método generalizado que tiene un predicado como parámetro y luego puede invocarse utilizando la notación lambda. – RenniePet
- 1. IList <int> vs Lista <int>
- 2. lista <int> convertir a int []
- 3. Cómo convertir la lista <string> en la lista <int>?
- 4. Lista <int> en C#
- 5. Cómo convertir System.Linq.Enumerable.WhereListIterator <int> en la lista <int>?
- 6. Agregar elementos a un diccionario <int, List <int>>
- 7. Cast lista <int> a la lista <string> en .NET 2.0
- 8. manera de llenar la lista <> con elementos
- 9. Deserializando la lista <int> con XmlSerializer causando elementos extra
- 10. gridview lista desplegable se unen a la lista <KeyValuePair <int, string>>
- 11. convertir lista <int> a la lista <long>
- 12. BOOST_CHECK_EQUAL con el par <int, int> y el operador personalizado <<
- 13. Lista de clasificación <Tuple <int, int>> in situ
- 14. Cómo convertir la lista <int> en una cadena []?
- 15. 3 elementos antiguos de la lista <> en C#
- 16. convertir IQueryable <int> a <int>
- 17. C# Expandir lista plana <T> al diccionario <T, ICollection <int>>
- 18. C# Converting List <int> en la lista <double>
- 19. 'Convertir' Diccionario <string,int> en la Lista <object>
- 20. eliminar duplicados de una lista <int>
- 21. Convertir la lista <MyObject> al Diccionario <obj.string, Lista <obj.ID>>
- 22. Ordenar un Dictionary <int, Lista <int>> mediante las teclas + valores de lista dentro de
- 23. C# byte [] volver a la lista <int>
- 24. Intercambiar dos elementos en la lista <T>
- 25. Imposible (o apto) a la lista <int> .Cast <Enum>()?
- 26. Convierte IEnumerable <int> en int []
- 27. Emitir una tabla hash. Llaves en la lista <int> u otra IEnumerable <int>
- 28. Shove una cadena delimitada en una lista <int>
- 29. Rango de suma de int en la lista <int>
- 30. Cómo deserializar Enumerable.ToList <>() a la lista <>
Yeesh! Alguien gastó un montón de tiempo downvoting 4 respuestas a continuación. –
@ p.campbell - Sí, quienquiera que fuera se ofendió por el extraño 'Dónde '. – Oded
posible duplicado de [Obtener el recuento de elementos de una lista <> utilizando Linq] (http://stackoverflow.com/questions/3853010/get-item-count-of-a-list-using-linq) –