Convert vs Parse

12/03/2007 - 05:10 por Cesar Gazzo | Informe spam
Hola gente tengo una consulta.

Cual es el mejor metodo de hacer las cosas, supongamos que tengo un STRING
con un número

string strNumero = "123";

Que es mejor?

CASO 1:
int numero = int.parse(strNumero);

CASO 2:
int numero = Convert.ToInt32(strNumero);

CASO 3:

int numero = (int)strNumero;

En mi caso me acostumbre usar el Convert por la posibilidad de Convert
cualquier cosa pero quiero saber cual seria la mejor forma de hacer de las
3.

Desde ya muchas gracias

César

Preguntas similare

Leer las respuestas

#1 Diego Jancic
12/03/2007 - 05:26 | Informe spam
On 12 mar, 01:10, "Cesar Gazzo" wrote:
Hola gente tengo una consulta.

Cual es el mejor metodo de hacer las cosas, supongamos que tengo un STRING
con un número

string strNumero = "123";

Que es mejor?

CASO 1:
int numero = int.parse(strNumero);

CASO 2:
int numero = Convert.ToInt32(strNumero);

CASO 3:

int numero = (int)strNumero;

En mi caso me acostumbre usar el Convert por la posibilidad de Convert
cualquier cosa pero quiero saber cual seria la mejor forma de hacer de las
3.

Desde ya muchas gracias

César



Hola Cesar!,
La pregunta se resuelve rapido usando reflector:

Convert.ToInt32(string) esta definida asi:

public static int ToInt32(string value)
{
if (value == null)
{
return 0;
}
return int.Parse(value);
}

Entonces, si tu string puede ser null te conviene usar Convert, sino
podes usar int.Parse y te salteas una validacion no necesaria...
El 3er caso que diste no funciona, no se puede castear un string a un
int...

Saludos!,
Diego
Respuesta Responder a este mensaje
#2 Octavio Hernandez
12/03/2007 - 09:51 | Informe spam
Yo casi siempre elijo int.Parse() - me parece más elegante. Pero puede ser
problema de gustos.
Si usas .NET 2.0, echa un vistazo también a int.TryParse(), que detecta
posibles errores sin
producir una excepción.

Slds - Octavio


"Cesar Gazzo" escribió en el mensaje
news:eIi$
Hola gente tengo una consulta.

Cual es el mejor metodo de hacer las cosas, supongamos que tengo un STRING
con un número

string strNumero = "123";

Que es mejor?

CASO 1:
int numero = int.parse(strNumero);

CASO 2:
int numero = Convert.ToInt32(strNumero);

CASO 3:

int numero = (int)strNumero;

En mi caso me acostumbre usar el Convert por la posibilidad de Convert
cualquier cosa pero quiero saber cual seria la mejor forma de hacer de las
3.

Desde ya muchas gracias

César

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida