Preguntas con la etiqueta [switch-statement]

Lista switch-statement preguntas

Estoy intentando crear una declaración de cambio, pero parece que no puedo usar una expresión que se evalúe (en lugar de una cadena/número entero establecido). Puedo hacer esto fácilmente con

Pruebe varios casos en un conmutador, como un OR (||)

7
respuestas
329
votos
232.2k
vistas

¿Cómo usarías a switch casecuando necesitas probar a o b en el mismo caso? switch (pageid) { case "listing-page": case "home-page": alert("hello"); break; case "details-page": alert("goodbye"); break; }

Opción 1 - switchusando return: function myFunction(opt) { switch (opt) { case 1: return "One"; case 2: return "Two"; case 3: return "Three"; default: return ""; } } Opción 2

Primero diré que estoy mucho más familiarizado con las enumeraciones en C# y parece que las enumeraciones en Java son un desastre. Como puede ver, estoy intentando usar una declaración

¿Cuál es el beneficio/desventaja de usar una switchdeclaración frente a una if/elseen C#? No puedo imaginar que haya una diferencia tan grande, aparte tal vez del aspecto de su código.

¿Por qué el compilador no coloca automáticamente declaraciones de interrupción después de cada bloque de código en el cambio? ¿Es por razones históricas? ¿Cuándo le gustaría que se ejecutaran varios

Quiero escribir una función en Python que devuelva diferentes valores fijos según el valor de un índice de entrada. En otros idiomas usaría una declaración switcho case, pero Python no

Soy un ex Pascal y actualmente estoy aprendiendo C#. Mi pregunta es la siguiente: ¿El siguiente código es más rápido que hacer un cambio? int a = 5; if (a

Dado que C# no puede funcionar switchcon un tipo (que, según tengo entendido, no se agregó como un caso especial porque islas relaciones significan que podría aplicarse más de uno

Al compilar el siguiente código aparece el mensaje de error: type illegal. int main() { // Compilation error - switch expression of type illegal switch(std::string("raj")) { case"sda": } } No