¿que diferencia hay entre isNullOrempty y isNullOrWhiteSpace?

Pregunta de la clase:
Ajuste de enrutamiento
Nexura Internacional

Nexura Internacional

Pregunta
studenthace 5 años

¿que diferencia hay entre isNullOrempty y isNullOrWhiteSpace?

5 respuestas
para escribir tu comentario
    Dorian Vallecillo Calderón

    Dorian Vallecillo Calderón

    studenthace 5 años

    Mira, basado en mi experiencia con C y C++, los strings o cadenas puedes casi considerarse un ++TIPO DE DATO ++ no primitivo

    Disculpa el error de concepto

    Dorian Vallecillo Calderón

    Dorian Vallecillo Calderón

    studenthace 5 años

    Hola ! Mira, basado en mi experiencia con C y C++, los strings o cadenas puedes casi considerarse un objeto no primitivo. Debido a que en C y C++ un string es una coleccion(vector) de tipos de dato char. https://stackoverflow.com/questions/7743356/length-of-a-c-stdstring-in-bytes

    Osea, si tenias la siguiente cadena

    string cadena= new String("hola"); // Esta cadena es una coleccion de 4 chars(1 byte cada char o 8 bits cada char). Por lo que tendriamos en memoria(32 bits)

    En este caso el string esta lleno(no es null y no esta vacio)

    Basado en ASCII para que un string sea null o vacio su valor debe ser

    string stringNull="\0"; // "vacio" o bien, string stringNull=null; // valor null

    ==================================== para que un string sea white space(espacio en blanco), su valor o valores tienen que ser espacion, que en ascii estan representado como /32

    string cadenaEnBlanco= new string("\32"); string cadenaEnBlanco= new string(" "); string cadenaEnBlanco= new string(" "); string cadenaEnBlanco= new string("\32 \n \32 ");

    Puedes darte una mirada a los siguientes links:

    https://stackoverflow.com/questions/18410234/how-does-one-represent-the-empty-char/18410297

    https://en.wikipedia.org/wiki/Whitespace_character

    Juan David Amaya Cardenas

    Juan David Amaya Cardenas

    studenthace 5 años

    Hola @jsotonx

    Te dejo algunos ejemplos que encontre que te ayudaran a entender mejor la situación que te expone @strivensonrincon

    string.IsNullOrWhiteSpace("\t"); //true string.IsNullOrEmpty("\t"); //false

    string.IsNullOrWhiteSpace(" "); //true string.IsNullOrEmpty(" "); //false

    string.IsNullOrWhiteSpace("\n"); //true string.IsNullOrEmpty("\n"); //false

    Nexura Internacional

    Nexura Internacional

    studenthace 5 años

    o sea q si paso un espacio blanco con whitespace da true pero con empty da false

    Stivenson Rincon Mora

    Stivenson Rincon Mora

    studenthace 5 años

    Hola jsontonx.

    La diferencia entre la primera y la segunda, es que la segunda evalúa en caso de no ser null si lo que contiene son solo espacios en blanco, osea una variable con caracteres no visibles pero que llenan la variable, ya sean uno o varios de estos caracteres).

    En otras palabras, dicha variable, daría false con el método "isNullOrempty" (pues evaluá que la variable sea null ó este vaciá y pues no lo esta), pero daría true con el método "isNullOrWhiteSpace" pues esta segunda evalúa que No sea null y que en caso de no ser null y este llena entonces verifica si ese llenado son solo espacios en blanco.

Curso de ASP.NET Core

Curso de ASP.NET Core

Crea aplicaciones web con ASP. NET Core, el framework open source multiplataforma creado por Microsoft y respaldado por toda una comunidad de desarrolladores. Domina esta implementación de alto rendimiento y empieza a programar tus propias apps.

Curso de ASP.NET Core
Curso de ASP.NET Core

Curso de ASP.NET Core

Crea aplicaciones web con ASP. NET Core, el framework open source multiplataforma creado por Microsoft y respaldado por toda una comunidad de desarrolladores. Domina esta implementación de alto rendimiento y empieza a programar tus propias apps.