En C# y Vb.net, ¿hay alguna manera sin iterar por bucle a bitarray para comprobar contins cualquier valor verdadero o falso (Dotnet 2.0)?¿Cómo comprueba bitArray cualquier valor verdadero o falso?
Respuesta
Dudo que haya alguna forma de poder hacerlo sin un lazo bajo el capó (como BitArray
puede ser arbitrariamente largo, a diferencia de BitVector32
), pero si lo que don' t desea escribir usted mismo:
var hasAnyTrue = input.Cast<bool>().Contains(true);
var hasAnyFalse = input.Cast<bool>().Contains(false);
No sé si puede hacerlo usando un BitArray, pero si usa un int, un largo etc. y luego verifica si es mayor que 0 (verdadero) o menor que el valor máximo de el tipo de datos (para falso) que lo haría.
así que algo como esto:
bool IsTrue (int bitArray)
{
return bitArray != 0;
}
bool isFalse (int bitArray)
{
return bitArray != int.MinValue;
}
De hecho, de que iba a ser mi sugerencia demasiado suponiendo que arroja bien. – Ian
BitArray es un tipo. No es un 'int'. –
Sí, pero como dijo, realmente no hay una forma de verificar los valores sin hacer un ciclo. Solo estaba ofreciendo una forma de verificar una matriz de bits, no necesariamente utilizando el tipo BitArray. – kemiller2002
de indexación en el BitArray
y la comprobación de los valores individuales boolean
es una solución obvia. Si le preocupa el rendimiento, primero debe considerar crear su propia abstracción, pero si prefiere usar BitArray
para la mayoría de sus operaciones, puede hacer la verificación usando CopyTo
en un int[]
del tamaño correcto (Count >> 5
), y luego realice controles cero o no cero en estas entradas, según corresponda.
Si está utilizando la clase BitArray de System.Collections, puede usar el siguiente código para determinar si algo es verdadero.
C# versión
var anyTrue = myArray.Cast<bool>().Any(x => x);
VB.Net Versión
Dim anyTrue = myArray.Cast(Of Boolean)().Any(Function(x) x)
Cualquier ventaja en no ir con el simple '.Contains (true)' en vez de 'Any'? En realidad, esta es la manera en que lo hice inicialmente, pero 'Contiene' me vino a la mente y lo cambié ya que no pude encontrar ninguna razón específica. Ideas? –
- 1. AutomaticMigrationsEnabled ¿es falso o verdadero?
- 2. ¿Cómo puedo convertir bool verdadero o falso a la cadena "Verdadero" o "Falso"
- 3. Excel: ¿VLOOKUP que devuelve verdadero o falso?
- 4. Devolver verdadero o falso al azar
- 5. ¿Cómo verificar si un parámetro es verdadero o falso?
- 6. Código correcto para convertir bool [] -> "falso, verdadero, verdadero, falso"
- 7. PHP booleano VERDADERO/FALSO?
- 8. Pasar verdadero/falso a slideToggle()
- 9. ¿Cómo establecer las variables de python en verdadero o falso?
- 10. Oracle: ¿Cómo puedo obtener un valor 'VERDADERO' o 'FALSO' al comparar dos NÚMEROS en una consulta?
- 11. Cómo comprobar el valor de retorno de la función si es verdadero o falso
- 12. ¿Existe un valor booleano verdadero/falso incorporado en Perl?
- 13. jQuery IU diálogo con retorno booleano - verdadero o falso
- 14. El siguiente código imprime "verdadero, verdadero, falso, verdadero". ¿No debería ser "verdadero, verdadero, verdadero"?
- 15. C++ bool devuelve 0 1 en lugar de verdadero falso
- 16. ¿Cómo funciona el verdadero/falso en PHP?
- 17. C++ palabras clave 'verdadero' y 'falso' de repente no es verdadero o falso en Visual C++ 6.0
- 18. Establecer el valor de la casilla de verificación en verdadero o falso con jQuery
- 19. Pregunta de LINQ donde el valor booleano es verdadero o falso
- 20. Geolocalización HTML5 enableHighAccuracy ¿Verdadero, falso o mejor opción?
- 21. Rieles (o Ruby): Sí/No en lugar de Verdadero/Falso
- 22. ¿FileDelete() devuelve verdadero o falso para el archivo inexistente?
- 23. ¿cuál es la diferencia de retorno verdadero o falso aquí?
- 24. expandir una variable booleana a la cadena "verdadero" o "falso"
- 25. ¿Por qué Javascript O devuelve un valor que no sea verdadero/falso?
- 26. Javascript regex devuelve verdadero ... luego falso ... luego verdadero ... etc.
- 27. Uri.TryCreate devuelve verdadero para cualquier valor de cadena?
- 28. php - ¿VERDADERO o verdadero? personas
- 29. reemplazar verdadero/falso en columnas DataGridView
- 30. ¿Devuelve verdadero/falso en el servicio REST?
use .Any() que es más legible – juFo