conjunto c#

09/10/2007 - 14:23 por Carmelo J. Morales Muñoz | Informe spam
¡hola!

¿como puedo saber si un caracter están en un determinado conjunto?.

algo como .. if (caracter in conjuntoValores) {

}


no encuentro como definir y usar esto.

Preguntas similare

Leer las respuestas

#16 RFOG [MVP C++]
11/10/2007 - 11:32 | Informe spam
"Octavio Hernandez" escribió en el mensaje
de noticias news:%
Rafa,

En C# sí se pueden juntar los case...

Slds - Octavio


"RFOG [MVP C++]" wrote in message
news:
"Alfredo Novoa" escribió en el mensaje de
noticias news:
On Tue, 9 Oct 2007 15:45:37 +0200, "RFOG [MVP C++]"
wrote:

Ojo que como el new bla sea un poco larguito va a ser peor el remedio
que la
enfermedad. Esa construcción le da mucha caña a todo el runtime del
.NET.

Si son pocas variables sería mucho mejor hacerlo a la vieja escuela:

if(a==b || a==c || a==d)



Y si son muchos switch al canto.

switch (c)
{
case 'A':
return true;
case 'B':
return false;
...



Saludos




Sipi.

Y si fuera C++ se podrían juntar los cases:

case 'A':
case 'B':
case 'C':
return true;
case 'D':
return false;

Aunque C# tiene la construcción equivalente:

case 'A':
goto case 'C';
case 'B':
goto case 'C':
case 'C':
return true;
case 'D':
return false;

Aunque no sé qué tal andará eso en cuanto a rendimiento.

La cuestión es que los cases, si tocara 'D', pasaría primero por 'A',
'B', 'C' hasta llegar a 'D'...

La opción del array, si se ordena, se puede buscar por una búsqueda
binaria si fueran realmente muchas pero muchas opciones.

Al final habría que hacer pruebas de rendimiento... Idea para una entrada
en mi blog...
Microsoft Visual C++ MVP
==>> Visita mi blog principal: http://rfog.blogsome.com
Y este sobre programación: http://geeks.ms/blogs/rfog
Libros, ciencia ficción y programación
>> Respirar es un hábito. La vida es un hábito o, mejor dicho, una sucesión
de hábitos, ya que un individuo es una sucesión de individuos.
irlandés.







Acabo de mirarlo: cierto. Esta cabecica mía...

Microsoft Visual C++ MVP
==Visita mi blog principal: http://rfog.blogsome.com
Y este sobre programación: http://geeks.ms/blogs/rfog
Libros, ciencia ficción y programación
Un tonto siempre encuentra otro más tonto que le admire.
Respuesta Responder a este mensaje
#17 Guillermo guille
11/10/2007 - 21:53 | Informe spam
pero el Select Case de VB es muuucho más mejor ;-)))

Case "A" To "C"
Return True
Case "D"
Return False

o

Case "A", "B", "C"
Return True
Case "D"
Return False

o

Case Is < "D"
Return True
...


¡No me he podio resistí! ;-))))

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/


"RFOG [MVP C++]" wrote in message
news:eRuWZn%
"Octavio Hernandez" escribió en el mensaje
de noticias news:%
Rafa,

En C# sí se pueden juntar los case...

Slds - Octavio


"RFOG [MVP C++]" wrote in message
news:
"Alfredo Novoa" escribió en el mensaje de
noticias news:
On Tue, 9 Oct 2007 15:45:37 +0200, "RFOG [MVP C++]"
wrote:

Ojo que como el new bla sea un poco larguito va a ser peor el remedio
que la
enfermedad. Esa construcción le da mucha caña a todo el runtime del
.NET.

Si son pocas variables sería mucho mejor hacerlo a la vieja escuela:

if(a==b || a==c || a==d)



Y si son muchos switch al canto.

switch (c)
{
case 'A':
return true;
case 'B':
return false;
...



Saludos




Sipi.

Y si fuera C++ se podrían juntar los cases:

case 'A':
case 'B':
case 'C':
return true;
case 'D':
return false;

Aunque C# tiene la construcción equivalente:

case 'A':
goto case 'C';
case 'B':
goto case 'C':
case 'C':
return true;
case 'D':
return false;

Aunque no sé qué tal andará eso en cuanto a rendimiento.

La cuestión es que los cases, si tocara 'D', pasaría primero por 'A',
'B', 'C' hasta llegar a 'D'...

La opción del array, si se ordena, se puede buscar por una búsqueda
binaria si fueran realmente muchas pero muchas opciones.

Al final habría que hacer pruebas de rendimiento... Idea para una
entrada en mi blog...
Microsoft Visual C++ MVP
==>>> Visita mi blog principal: http://rfog.blogsome.com
Y este sobre programación: http://geeks.ms/blogs/rfog
Libros, ciencia ficción y programación
>>> Respirar es un hábito. La vida es un hábito o, mejor dicho, una sucesión
de hábitos, ya que un individuo es una sucesión de individuos.
irlandés.







Acabo de mirarlo: cierto. Esta cabecica mía...

Microsoft Visual C++ MVP
==> Visita mi blog principal: http://rfog.blogsome.com
Y este sobre programación: http://geeks.ms/blogs/rfog
Libros, ciencia ficción y programación
> Un tonto siempre encuentra otro más tonto que le admire.

Respuesta Responder a este mensaje
#18 Guillermo guille
11/10/2007 - 21:56 | Informe spam
... >0 es suficiente.



entonces no tendrá en cuenta el primer carácter de la cadena...

s = "Hola"

s.IndexOf("H") == 0

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/


"Harvey Triana" wrote in message
news:%
en cualquier caso, la comprobación debería ser > -1



... >0 es suficiente.

Saludos,
<Harvey triana />

"Guillermo 'guille'" escribió en el mensaje
news:
en cualquier caso, la comprobación debería ser > -1, 0 es una posición
válida: ¡la primera de la cadena! (esas cosas nos suele pasar a los de VB
que siempre pensamos en "base 1", je, je.)

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/


"Jose Luis Manners" wrote in message
news:
dale un vistazo a la función IndexOf de la clase string:

if (mistring.IndexOf(new char[] { 'x', 'y' }) > 0)

-
Coopera con el foro. Dinos si te sirvió la respuesta aquí planteada.
-

Regards/Saludos,

Jose Luis Manners
Microsoft MVP Visual C#
http://www.josemanners.com/

"Simplicity is the ultimate sophistication."




"Carmelo J. Morales Muñoz" wrote in message
news:
¡hola!

¿como puedo saber si un caracter están en un determinado conjunto?.

algo como .. if (caracter in conjuntoValores) {

}


no encuentro como definir y usar esto.










Respuesta Responder a este mensaje
#19 RFOG [MVP C++]
11/10/2007 - 22:22 | Informe spam
Ahora vas y lo kaskas.

Si será la única construcción que es más compacta en VB que en C# y C++...

"Guillermo 'guille'" escribió en el mensaje de
noticias news:
pero el Select Case de VB es muuucho más mejor ;-)))

Case "A" To "C"
Return True
Case "D"
Return False

o

Case "A", "B", "C"
Return True
Case "D"
Return False

o

Case Is < "D"
Return True
...


¡No me he podio resistí! ;-))))

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/

Respuesta Responder a este mensaje
#20 Anonimo
12/10/2007 - 23:34 | Informe spam
0 excluye 0


una inecuación ; )


"Guillermo 'guille'" escribió en el mensaje
news:
... >0 es suficiente.



entonces no tendrá en cuenta el primer carácter de la cadena...

s = "Hola"

s.IndexOf("H") == 0

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/


"Harvey Triana" wrote in message
news:%
en cualquier caso, la comprobación debería ser > -1



... >0 es suficiente.

Saludos,
<Harvey triana />

"Guillermo 'guille'" escribió en el mensaje
news:
en cualquier caso, la comprobación debería ser > -1, 0 es una posición
válida: ¡la primera de la cadena! (esas cosas nos suele pasar a los de
VB que siempre pensamos en "base 1", je, je.)

Nos vemos
Guillermo

Microsoft MVP Visual Basic desde 1997
Tus consultas en los foros del Guille: http://foros.elguille.info/


"Jose Luis Manners" wrote in message
news:
dale un vistazo a la función IndexOf de la clase string:

if (mistring.IndexOf(new char[] { 'x', 'y' }) > 0)

-
Coopera con el foro. Dinos si te sirvió la respuesta aquí planteada.
-

Regards/Saludos,

Jose Luis Manners
Microsoft MVP Visual C#
http://www.josemanners.com/

"Simplicity is the ultimate sophistication."




"Carmelo J. Morales Muñoz" wrote in message
news:
¡hola!

¿como puedo saber si un caracter están en un determinado conjunto?.

algo como .. if (caracter in conjuntoValores) {

}


no encuentro como definir y usar esto.













Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida