Red de conocimientos turísticos - Conocimientos sobre calendario chino - Soy nuevo en Java. Hoy tengo una tarea de extensión de calendario, que consiste en ingresar el año y el mes desde el teclado y luego generar el calendario para ese mes. Por favor, deme algún consejo, gracias.

Soy nuevo en Java. Hoy tengo una tarea de extensión de calendario, que consiste en ingresar el año y el mes desde el teclado y luego generar el calendario para ese mes. Por favor, deme algún consejo, gracias.

Hola, este es el código

import?java.util.Calendar;

import?java.util.Scanner;

/** *?@autor?liuxe *?@since?JDK?1.7.0_79 */

public?class?CalendarTest?{

public?static?void?main( String[]?args)?{

int?year?=?-1;

int?month?=?-1;

Escáner?escáner ?=?new?Scanner(System.in);

System.out.println("Ingrese el año");

¿mientras?(¿año?

¿intentar?{

año?=?scanner.nextInt();

}?catch?(¿Excepción?ex)?{

año?=?-1;

scanner.nextLine();

System.out.println("Error de entrada, ingrese el año");

}

}

System.out.println("Ingrese el mes");

mientras?(mes?

¿intentar?{

mes?=?scanner.nextInt();

si?(mes??12 )?{

lanzar?new?Exception();

}

}?catch?(¿Excepción?ex)?{

mes?=?-1;

scanner.nextLine();

System.out.println("Error de entrada, ingrese el mes");

}

}

System.out.println("\n日\t一\t二\t三\t四\t五\t六\ n");

Calendar?calendar?=?Calendar.getInstance();

calendar.set(año,?mes?-?1,?1);

int?week?=?calendar.get(Calendar.DAY_OF_WEEK);

int?weekLoop?=?0;

int?monthDays?=?0;

//estructura del cambio

¿cambio?(mes)?{

caso?1:

mesDías?=?31;

break;

caso?2:

//Determinar si es año bisiesto

if?(((año?%? 4?==?0) ?&&?(año?%?100?=?0))?||?(año?%?400?==?0))?{

mesDías? =?29;

}?else?{

mesDías?=?28;

}

descanso;

caso?3 :

mesDías?=?31;

descanso;

caso

?4:

díasmes?=?30;

descanso;

caso?5:

díasmes?=?31;

ruptura;

caso?6:

mesDías?=?30;

ruptura;

caso? 7:

díasmes?=?31;

descanso;

caso?8:

díasmes?=?31;

descanso; p>

descanso;

caso?9:

mesDías?=?30;

descanso;

caso?10 :

díasmes?=?31;

descanso;

caso?11:

díasmes? =?30;

descanso;

predeterminado:

mesDías?=?31;

}

//for loop

for?(int?i?=?0?-?week?+?2;?i?<=?monthDays;?i++)?{

si?(i?<= ?0)?{

System.out.print("");

}?else?{

System. out.print(i);

}

semanaLoop++;

System.out.print("\t");

si?(weekLoop?%? 7?==?0)?{

System.out.println();

}

}

System.out .println();

scanner.close();

}

}

Ejecutar resultados :