Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

208
Vistas
final de línea ilegal en carácter literal

**Acerca del código: solo estoy creando un código simple usando una declaración de cambio. Todos los casos de interruptores funcionan bien, excepto los casos de dos dígitos. Me sale un error diciendo:

year.java:37: error: unclosed character literal case '10'
year.java:40: error: unclosed character literal case '11':year.java:43: error: unclosed character literal case '12'

Código:

 import java.util.Scanner; public class year { public static void main(String[] args) { Scanner input = new Scanner(System.in); char year; System.out.println("Enter the number of the month "); year = input.next().charAt(0); switch(year){ case '1': System.out.println("January"); break; case '2': System.out.println("Febraury"); break; case '3': System.out.println("March"); break; case '4': System.out.println("April"); break; case '5': System.out.println("May"); break; case '6': System.out.println("June "); break; case '7': System.out.println("July"); break; case '8': System.out.println("August "); break; case '9': System.out.println("September "); break; case '10': System.out.println("October"); break; case '11': System.out.println("November"); break; case '12' System.out.println("December"); break; default: System.out.println("Invalid"); } input.close(); } }

Intenté hacer algunos cambios aquí y allá, pero no pude entenderlos y, por lo tanto, no pude hacerlo.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Su year variable es un carácter. Un char solo puede ser un solo carácter.

Por lo tanto, cuando intenta hacer '11' o '12' , se encuentra con problemas ya que estos "caracteres" consisten en más de un carácter.

La solución rápida aquí sería usar String en lugar de char, usando input.next() sin .charAt(0) . Luego, deberá cambiar las declaraciones de su caso para usar comillas dobles en lugar de comillas simples.

Alternativamente, podría hacer Integer.parseInt(input.next()) y luego activar un int en su lugar, como sugirió @Tom.

over 4 years ago · Santiago Trujillo Denunciar

0

En primer lugar, hay un error de sintaxis en case '12' , debería ser case '12': (Además, la sangría del código es mala. La sangría deficiente dificulta la depuración)

Le sugiero que convierta este código en uno basado en String . Por favor, consulte el ejemplo completo a continuación. Char puede obtener un solo carácter y un char year; causar un error, porque en valores de entrada como 10, 11, 12 no funcionará como se esperaba

 import java.util.Scanner; public class year { public static void main(String[] args) { Scanner input = new Scanner(System.in); String year; System.out.println("Enter the number of the month "); year = input.nextLine(); switch(year){ case "1": System.out.println("January"); break; case "2": System.out.println("Febraury"); break; case "3": System.out.println("March"); break; case "4": System.out.println("April"); break; case "5": System.out.println("May"); break; case "6": System.out.println("June "); break; case "7": System.out.println("July"); break; case "8": System.out.println("August "); break; case "9": System.out.println("September "); break; case "10": System.out.println("October"); break; case "11": System.out.println("November"); break; case "12": System.out.println("December"); break; default: System.out.println("Invalid"); } input.close(); } }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda