es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Ámbito de las variables dentro de una declaración switch case en Java.

Tengo el siguiente código, mi pregunta es cómo podemos persistir el valor de la cadena A y B y usarlo en otra instrucción de caso para compararlo.

“`java
String A = null;
String B = null;

switch(key) {
case “ABC”:
A = “Hola”;
break;
case “XYZ”:
B = “Hola”;
break;
case “compare”:
A.equals(B); // Excepción aquí ya que A y B son nulos.
}

¿Alguien puede guiarme aquí? Estoy realmente confundido con el alcance de las variables en la instrucción switch.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para persistir los valores de la cadena A y B y utilizarlos en otro caso para la comparación, puedes definirlos fuera del bloque switch. Esto garantiza que su alcance no se limite al bloque switch y se puedan usar más adelante en el programa.

    Aquí tienes un ejemplo de cómo puedes modificar el código:

    String A = null;
    String B = null;
    
    switch (key) {
    
       case "ABC":
         A = "Hola";
         break;
       case "XYZ":
         B = "Hola";
         break;
       case "comparar":
         if (A != null && B != null) {
           A.equals(B);
         }
         break;
    }
    

    Al definir las cadenas A y B fuera del bloque switch, sus valores serán persistentes y se pueden utilizar en otros casos. En el caso “comparar”, puedes verificar si tanto A como B no son nulos antes de compararlos para evitar excepciones.

    ¡Espero que esto te ayude!

Comments are closed.