Introducción
En apps Java es común necesitar la hora, el idioma/localización y el tamaño de pantalla para adaptar la interfaz. Aquí tienes lo esencial.
1. Hora del sistema (Java 8+)
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
LocalDateTime ahora = LocalDateTime.now();
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss");
System.out.println(ahora.format(fmt));2. Idioma y localización
import java.util.Locale;
Locale locale = Locale.getDefault();
System.out.println(locale.getLanguage());
System.out.println(locale.getCountry());
System.out.println(locale.getDisplayName());3. Resolución de pantalla
import java.awt.Toolkit;
import java.awt.Dimension;
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension size = toolkit.getScreenSize();
System.out.println(size.width + "x" + size.height);Ejemplo completo
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
import java.awt.Toolkit;
import java.awt.Dimension;
LocalDateTime ahora = LocalDateTime.now();
Locale locale = Locale.getDefault();
Dimension size = Toolkit.getDefaultToolkit().getScreenSize();
System.out.println(ahora.format(DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm:ss")));
System.out.println(locale.getDisplayName());
System.out.println(size.width + "x" + size.height);Buenas prácticas
- Usa
java.timeen proyectos nuevos. - En apps de escritorio, cachea datos de pantalla.
- Para zonas horarias, usa
ZonedDateTime.
Conclusión
Con pocas líneas obtienes hora, idioma y resolución, creando apps más adaptables.