Código Java para calcular el año bisiesto
Estoy siguiendo el libro "El arte y la ciencia de Java" y muestra cómo calcular un año bisiesto. El libro utiliza la biblioteca de ACM Java Task Force.
Aquí está el código que usan los libros:
import acm.program.*;
public class LeapYear extends ConsoleProgram {
public void run()
{
println("This program calculates leap year.");
int year = readInt("Enter the year: ");
boolean isLeapYear = ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0));
if (isLeapYear)
{
println(year + " is a leap year.");
} else
println(year + " is not a leap year.");
}
}
Ahora, así es como calculé el año bisiesto.
import acm.program.*;
public class LeapYear extends ConsoleProgram {
public void run()
{
println("This program calculates leap year.");
int year = readInt("Enter the year: ");
if ((year % 4 == 0) && year % 100 != 0)
{
println(year + " is a leap year.");
}
else if ((year % 4 == 0) && (year % 100 == 0) && (year % 400 == 0))
{
println(year + " is a leap year.");
}
else
{
println(year + " is not a leap year.");
}
}
}
¿Hay algún problema con mi código o debo usar el que me proporciona el libro?
EDITAR: Ambos códigos anteriores funcionan bien. Lo que quiero preguntar es qué código es la mejor manera de calcular el año bisiesto.