"Lembrei-me que queria falar um pouco sobre como trabalhar com datas."
"Você já me disse que Java tem a classe Date, e posso usar essa classe para trabalhar com datas."
"Hmm. Bem, a classe Date está desatualizada há algum tempo."
"Agora é recomendado usar a classe Calendar, que tem um método getTime() que retorna a data atual."
"Este é um objeto Calendário geralmente criado:"
Calendar cal = Calendar.getInstance();
"Quando você chama esse método, o calendário correto é criado com base nas configurações do seu computador."
"O calendário 'correto'? Isso significa que existem vários?"
"Sim. Bem, seria mais correto dizer 'relevante'. O fato é que a Terra não tem um, mas muitos calendários. Quase todos eles estão associados a alguma religião ou país."
"O ano pode ser diferente dependendo do país em que você está."
"Aqui estão exemplos dos calendários mais comuns."
Aula de calendário | Nome do calendário |
---|---|
Calendário gregoriano | calendário gregoriano cristão |
calendário budista | calendário budista |
Calendário Imperial Japonês | calendário imperial japonês |
"Há também o calendário chinês, o calendário islâmico e muitos mais."
"Eu vejo."
"Para obter a data atual, você precisa escrever um código como este:"
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();
"A classe Calendar tem muitos métodos que permitem que você obtenha rapidamente qualquer informação sobre uma data e hora."
Código | Comentários |
---|---|
|
era ano mês dia do mês dia da semana (Seg, Ter, Qua, …) hora minuto segundo |
"Às vezes, você realmente só precisa obter uma parte das informações disponíveis. Por exemplo, o ano atual ou o dia da semana."
"Mas às vezes você simplesmente precisa exibir a data no formato correto."
"Por exemplo, no arquivo de log ou em outro lugar."
"Ou fazer um formato que o usuário possa personalizar. O que você faz então?"
"Também existem classes especiais para isso. A classe SimpleDateFormat é perfeitamente adequada para a tarefa que você descreveu:"
Calendar calendar = Calendar.getInstance();
DateFormat formatter = new SimpleDateFormat("MM-DD-YY");
String message = formatter.format(calendar.getTime());
"Ah. Eu me lembro. Você já me explicou algumas coisas sobre SimpleDateFormat , mas sinceramente não me lembro de muita coisa."
"É tudo muito simples. Você cria um objeto SimpleDateFormat e passa para ele o padrão de data que deseja obter. Em seguida, você chama o método format e ele fornece a data passada no formulário desejado."
"Parece interessante. Eu gostaria de mais detalhes."
"Aqui está. Os detalhes. Aqui estão algumas das letras que podem ser usadas no padrão de data:"
Carta | Descrição |
---|---|
G | Substituído pela era (AD ou BC) |
y | Substituído pelo ano |
M | Substituído pelo mês |
c | Número de semanas no ano |
C | Número da semana no mês |
D | Número de dias no ano |
d | Dia do mês |
F | Dia da semana no mês |
E | Dia da semana |
a | AM/PM (antes ou depois do meio-dia) |
H | Hora no formato de 24 horas (0-23) |
k | Hora no formato de 24 horas (1-24) |
k | Hora no formato de 12 horas (0-11) |
h | Hora no formato de 12 horas (1-12) |
m | Minutos |
s | Segundos |
S | Milissegundos |
z | Fuso horário, formatado assim: Pacific Standard Time, PST |
Z | Fuso horário, formatado assim: -0800/td> |
"Legal! Isso é tudo que você precisa."
"Ainda existem algumas nuances relacionadas à repetição dessas letras."
"Se você escrever YY, obterá os dois últimos dígitos do ano. Se escrever YYYY, obterá todos os quatro dígitos do ano."
"Também há alguma complexidade com os meses. MM é o número do mês. MMM é uma abreviação de três letras do mês, ou seja, janeiro, fevereiro, março, abril, maio, etc. MMMM significa o nome completo do mês ."
"Você também pode exibir o dia inteiro da semana (usando EEEE) ou apenas as duas primeiras letras (usando EE)."
"Obrigado, Rishi. Esta classe SimpleDateFormat é realmente útil. Agora eu sei."
"Divirta-se usando! E boa sorte!"
GO TO FULL VERSION