Programación General > Java

 Instruccion Switch

(1/2) > >>

alemag:
Saludos compañeros, quiero implementar en un metodo una instrucción switch, pero me he encontrado con un problema. Se puede poner como centinela un string ?
Me parece que no, lo unico asignarle un entero, pero es que son muchas opciones, y quedaria un poco chapucero creo, y otra manera es hacerlo con secuencias if’s anidadas.
Me podria confirmar alguien lo del switch o si existe alguna instrucción semejante que pueda manejar strings ¿??

Gracias por adelantado.

Mollense:
Por lo que he leído por ahí, la variable de referencia sólo puede ser una expresión que evalúe a los tipos primitivos enteros o char.

 :hola:

Drackzer:
En efecto, como mi kerido compañero acaba de citar, solo puedes hacer referencia de las opciones de tu instruccion "switch" por medio de referencias de tipo entero (int) y de caracter (char)... ya que con una cadena de caracteres no podrias llevarlo a cabo, tendrias que convertir la cadena(string) a uno de estos tipos de dato... suerte amigo...!!

lencho:
Solo se me ocurre esto:

podrias cargar todos tus Strings a un vector, y el indice del vector utilizarlos en el Switch.

Espero y te sirva.

BYTE.

JuanK:
Es cierto en java no puedes usar switch sino tan solo en tipos primitivos, en C# si puedes usar switch con string porque entre otras cosas en C# string se considera nu tipo primitivo.

Una solucion, que no se que tan factible y util sea de implementar en Java, es que crees una nueva clase que herede de String y en esa clase puedes crear una sobrecarga del operador == y del operador != ( y las demas cosas que java requiera para eso), una vez hecho eso empiezas a trabajar con tu clase nueva y ptrata de usarla en un switch como se usaria normalmente o bien solo has comparaciones con if usando == y != . :scream:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa