SlideShare uma empresa Scribd logo
1 de 17
Manipulação de datas
em Java
IF Goiano campus Morrinhos
Técnico em Informática Integrado ao Ensino Médio
Linguagens e Técnicas de Programação
Prof. Me. Norton Guimarães
1
O que veremos?
 Manipulação de datas
 java.util.Date;
 java.util.Calendar;
 java.util.GregorianCalendar;
 java.util.Locale
 Máscaras de datas
 concatenação de string
 java.text.SimpleDateFormat
 java.text.DateFormat
Técnico em Informática – IF Goiano campus Morrinhos 2
Manipulação de datas
Técnico em Informática – IF Goiano campus Morrinhos 3
Classe java.util.Date
 A JDK (Java Development Kit), fornece as
classes java.util.Date para o
armazenamento e manipulação de datas.
 A classe Date, permite manipular datas em
diversos formatos, podendo ser utilizada
em diversos padrões mundiais.
Técnico em Informática – IF Goiano campus Morrinhos 4
Imprimir data com java.util.Date
import java.util.Date;
public class Funcionarios {
public void imprimirDataHoje() {
Date dataHoje = new Date();
System.out.println(dataHoje);
}
}
Técnico em Informática – IF Goiano campus Morrinhos 5
Imprimir data com java.util.Calendar
import java.util.Date;
Import java.util.Calendar;
public class Funcionarios {
public void imprimirDataCalendar(){
Calendar calendario = Calendar.getInstance();
calendario.set(2015, 11, 12);
Date dataCalendario = calendario.getTime();
System.out.println(dataCalendario);
}
}
Técnico em Informática – IF Goiano campus Morrinhos 6
Imprimir data com java.util.GregorianCalendar
Import java.util.GregorianCalendar;
public class Funcionarios {
public void imprimirDataGregoriana() {
GregorianCalendar dataGC = new GregorianCalendar();
//Mostra o dia da semana: 1 = Domingo, etc
System.out.println(dataGC.get(dataGC.DAY_OF_WEEK));
//Verifica se o ano é bissexto
System.out.println(dataGC.isLeapYear(2009));
//Atribui uma data diferente da atual
dataGC.set(2015, 11, 12);
}
}
//Mostra o dia
System.out.println(dataGC.get(dataGC.DATE));
//Mostra o Mês: 1 = Janeiro, 2 = Fevereiro, etc
System.out.println(dataGC.get(dataGC.MONTH));
//Mostra o ano
System.out.println(dataGC.get(dataGC.YEAR));
Técnico em Informática – IF Goiano campus Morrinhos 7
Comparar Datas
import java.util.Date;
Import java.util.Calendar;
public class Funcionarios {
public void compararDatas(){
Date dataUm = new Date();
Calendar calendario = Calendar.getInstance();
calendario.set(2015, 10, 25);
Date dataDois = calendario.getTime();
boolean dataSaoIguais = dataUm.equals(dataDois);
boolean dataDoisPosterior = dataUm.after(dataDois);
boolean dataDoisAnterior = dataUm.before(dataDois);
}
}
Técnico em Informática – IF Goiano campus Morrinhos 8
Internacionalização de datas
import java.util.Calendar;
import java.util.Locale;
import java.text.DateFormat;
import java.util.Date;
public class Funcionarios {
public void dataInternaciona() {
Calendar c = Calendar.getInstance();
Date data = c.getTime();
Locale brasil = new Locale("pt", "BR"); //Retorna do país e a língua
Locale eua = Locale.US;
DateFormat f2 = DateFormat.getDateInstance(DateFormat.FULL, brasil);
System.out.println("Data e hora brasileira: " + f2.format(data));
DateFormat f3 = DateFormat.getDateInstance(DateFormat.FULL, eua);
System.out.println("Data e hora americana: " + f3.format(data));
}
}Técnico em Informática – IF Goiano campus Morrinhos 9
Máscaras de datas
Técnico em Informática – IF Goiano campus Morrinhos 10
Conversão de data para string com
concatenação
import java.util.Date;
public class Funcionarios {
public void imprimeData(){
Date dataUm = new Date();
String dataString = “Data: ” + dataUm;
System.out.printiln(dataString);
}
}
Técnico em Informática – IF Goiano campus Morrinhos 11
Formatação de data com a classe
java.text.SimpleDateFormat
import java.util.Date;
Import java.text.SimpleDateFormat;
public class Funcionarios {
public void formataData(){
Date dataUm = new Date();
SimpleDateFormat formataDatas = new SimpleDateFormat("dd/MM/yyyy");
//Outras máscaras podem ser fornecidas: “yyyy-MM-dd”, “dd/MM/yyyy hh:mm:ss”, “hh:mm:ss”.
String dataFormatada = formataDatas.format(dataUm);
System.out.println(dataFormatada);
}
}
Técnico em Informática – IF Goiano campus Morrinhos 12
Legenda das Máscaras de datas
 d  dia do mês
 D  dia do ano
 F  dia da semana no mês
 a  marcador de am/pm
 w  semana do ano
 W  semana do mês
 M  mês
 m  minuto
 y  ano
 h  hora em am/pm (1 a 12)
 H  hora do dia (0 a 23)
 k  hora do dia (1 a 24)
 K  hora em am/pm (0 a 11)
 s  segundos
 S  milissegundos
Técnico em Informática – IF Goiano campus Morrinhos 13
Formatação Date com a classe
java.text.DateFormat
import java.util.Date;
Import java.text.DateFormat;
import java.util.Calendar;
public class Funcionarios {
public void converterStringParaData(){
Calendar c = Calendar.getInstance();
c.set(2015, Calendar.FEBRUARY, 21);
Date data = c.getTime();
DateFormat formataData = DateFormat.getDateInstance(); //Formata a data
System.out.println("Data atual com formatação: "+ formataData.format(data));
DateFormat dtHora = DateFormat.getDateTimeInstance(); //Formata Data e Hora
System.out.println(dtHora.format(data));
}
}Técnico em Informática – IF Goiano campus Morrinhos 14
Conversão de string para Date com a
classe java.text.SimpleDateFormat
import java.util.Date;
Import java.text.SimpleDateFormat;
public class Funcionarios {
public void converterStringParaData(){
String dataString = "15/11/2014";
SimpleDateFormat formataDatas = new SimpleDateFormat("dd/MM/yyyy");
Date data = null;
try {
data = formataDatas.parse(dataString);
} catch (ParseException ex) {
System.out.println(ex);
}
System.out.println(data);
}
}
Técnico em Informática – IF Goiano campus Morrinhos 15
Diferenças entre datas
import java.util.Date;
import java.text.SimpleDateFormat;
public class Funcionarios {
public void diferencaEntreDatas() {
SimpleDateFormat sdf = new SimpleDateFormat("dd/mm/yyyy");
try {
Date date1 = sdf.parse("05/11/2015");
Date date2 = sdf.parse("06/11/2015");
long differenceMilliSeconds = date2.getTime() - date1.getTime();
System.out.println("diferenca em milisegundos: " + differenceMilliSeconds);
System.out.println("diferenca em segundos: " + (differenceMilliSeconds / 1000));
System.out.println("diferenca em minutos: " + (differenceMilliSeconds / 1000 / 60));
System.out.println("diferenca em horas: " + (differenceMilliSeconds / 1000 / 60 / 60));
System.out.println("diferenca em dias: " + (differenceMilliSeconds / 1000 / 60 / 60 / 24));
} catch (ParseException e) {
e.printStackTrace();
}
}
}
Técnico em Informática – IF Goiano campus Morrinhos 16
Referências
 DEITEL, H. M.; DEITEL, P. J. Java: como programar. 6. ed. São Paulo, SP:
Pearson, 2005. xl, 1110 p. ISBN 9798576050193.
 HANSEN, Vitor Yudi. Manipulando datas em java. DevMedia. Disponível em:
http://www.devmedia.com.br/manipulando-datas-em-java/21765. Acesso
em: 11 nov. 2015.
 PALMEIRA, Thiago Vinícius Varallo. DevMedia. Disponível em:
http://www.devmedia.com.br/trabalhando-com-as-classes-date-calendar-e-
simpledateformat-em-java/27401. Acesso em: 11 nov. 2015.
 SANTOS, Rafael. Introdução à programação orientada a objetos usando Java.
Rio de Janeiro, RJ: Elsevier, 2003. 319 p. ISBN 9788535212068.
 SOUSA, Sidney Roberto de. Aula extra – Manipulação de datas em java. Mato
Grosso. Disponível em: http://pt.slideshare.net/darknessdescend/manipulao-
de-datas-em-java. Acesso em: 11 nov. 2015.
Técnico em Informática – IF Goiano campus Morrinhos 17

Mais conteúdo relacionado

Mais procurados

Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 
Multithreading In Java
Multithreading In JavaMultithreading In Java
Multithreading In Javaparag
 
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com JavaExercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com JavaLoiane Groner
 
[Curso Java Basico] Exercicios Aulas 36 a 43
[Curso Java Basico] Exercicios Aulas 36 a 43[Curso Java Basico] Exercicios Aulas 36 a 43
[Curso Java Basico] Exercicios Aulas 36 a 43Loiane Groner
 
Aula 02 - Escolha caso
Aula 02 - Escolha casoAula 02 - Escolha caso
Aula 02 - Escolha casoEder Samaniego
 
7±2 things you didn’t know about Exposed.pptx
7±2 things you didn’t know about Exposed.pptx7±2 things you didn’t know about Exposed.pptx
7±2 things you didn’t know about Exposed.pptxAlexey Soshin
 
Operators and Expressions in Java
Operators and Expressions in JavaOperators and Expressions in Java
Operators and Expressions in JavaAbhilash Nair
 
[Curso Java Basico] Exercicios Aula 24
[Curso Java Basico] Exercicios Aula 24[Curso Java Basico] Exercicios Aula 24
[Curso Java Basico] Exercicios Aula 24Loiane Groner
 

Mais procurados (8)

Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 
Multithreading In Java
Multithreading In JavaMultithreading In Java
Multithreading In Java
 
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com JavaExercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
 
[Curso Java Basico] Exercicios Aulas 36 a 43
[Curso Java Basico] Exercicios Aulas 36 a 43[Curso Java Basico] Exercicios Aulas 36 a 43
[Curso Java Basico] Exercicios Aulas 36 a 43
 
Aula 02 - Escolha caso
Aula 02 - Escolha casoAula 02 - Escolha caso
Aula 02 - Escolha caso
 
7±2 things you didn’t know about Exposed.pptx
7±2 things you didn’t know about Exposed.pptx7±2 things you didn’t know about Exposed.pptx
7±2 things you didn’t know about Exposed.pptx
 
Operators and Expressions in Java
Operators and Expressions in JavaOperators and Expressions in Java
Operators and Expressions in Java
 
[Curso Java Basico] Exercicios Aula 24
[Curso Java Basico] Exercicios Aula 24[Curso Java Basico] Exercicios Aula 24
[Curso Java Basico] Exercicios Aula 24
 

Semelhante a Manipulação de datas em java

Manipulação de Datas em Java
Manipulação de Datas em JavaManipulação de Datas em Java
Manipulação de Datas em JavaSidney Roberto
 
Técnicas de Refactoring
Técnicas de RefactoringTécnicas de Refactoring
Técnicas de RefactoringRodrigo Branas
 
Programação Orientada por Objectos - Aula 4
Programação Orientada por Objectos - Aula 4Programação Orientada por Objectos - Aula 4
Programação Orientada por Objectos - Aula 4guestd521d1f
 
Pg sem3-1505102
Pg sem3-1505102Pg sem3-1505102
Pg sem3-1505102csmp
 
Pg sem3ex
Pg sem3exPg sem3ex
Pg sem3excsmp
 
AspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em JavaAspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em Javaelliando dias
 
An Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in JavaAn Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in Javasagostinho
 
TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...
TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...
TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...tdc-globalcode
 
Desenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVADesenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVAWillian Magalhães
 
Spring framework 2.5
Spring framework 2.5Spring framework 2.5
Spring framework 2.5Diego Pacheco
 
Ecosistema spring a_plataforma_enterprise_jav
Ecosistema spring a_plataforma_enterprise_javEcosistema spring a_plataforma_enterprise_jav
Ecosistema spring a_plataforma_enterprise_javJulio Viegas
 
Automação de Testes com AngularJS
Automação de Testes com AngularJSAutomação de Testes com AngularJS
Automação de Testes com AngularJSRodrigo Branas
 
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de DadosParadigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de DadosAdriano Teixeira de Souza
 

Semelhante a Manipulação de datas em java (18)

Manipulação de Datas em Java
Manipulação de Datas em JavaManipulação de Datas em Java
Manipulação de Datas em Java
 
Técnicas de Refactoring
Técnicas de RefactoringTécnicas de Refactoring
Técnicas de Refactoring
 
Java6
Java6Java6
Java6
 
Programação Orientada por Objectos - Aula 4
Programação Orientada por Objectos - Aula 4Programação Orientada por Objectos - Aula 4
Programação Orientada por Objectos - Aula 4
 
Programação Orientada por Objectos - Aula 4
Programação Orientada por Objectos - Aula 4Programação Orientada por Objectos - Aula 4
Programação Orientada por Objectos - Aula 4
 
POO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - DatasPOO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - Datas
 
Pg sem3-1505102
Pg sem3-1505102Pg sem3-1505102
Pg sem3-1505102
 
Pg sem3ex
Pg sem3exPg sem3ex
Pg sem3ex
 
AspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em JavaAspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em Java
 
An Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in JavaAn Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in Java
 
Mock Objects
Mock ObjectsMock Objects
Mock Objects
 
TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...
TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...
TDC2016POA | Trilha Banco de Dados - Firebase e Realm, o NoSQL ganha força no...
 
Tutorial java swing
Tutorial java swingTutorial java swing
Tutorial java swing
 
Desenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVADesenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVA
 
Spring framework 2.5
Spring framework 2.5Spring framework 2.5
Spring framework 2.5
 
Ecosistema spring a_plataforma_enterprise_jav
Ecosistema spring a_plataforma_enterprise_javEcosistema spring a_plataforma_enterprise_jav
Ecosistema spring a_plataforma_enterprise_jav
 
Automação de Testes com AngularJS
Automação de Testes com AngularJSAutomação de Testes com AngularJS
Automação de Testes com AngularJS
 
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de DadosParadigmas de Linguagens de Programação - Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação - Tipos Abstratos de Dados
 

Mais de Norton Guimarães

DIVERSIDADE DA ESCOLA - Meninos vestem azul
DIVERSIDADE DA ESCOLA - Meninos vestem azulDIVERSIDADE DA ESCOLA - Meninos vestem azul
DIVERSIDADE DA ESCOLA - Meninos vestem azulNorton Guimarães
 
Mini Curso - Cultura Maker e Design Thinking.pptx
Mini Curso - Cultura Maker e Design Thinking.pptxMini Curso - Cultura Maker e Design Thinking.pptx
Mini Curso - Cultura Maker e Design Thinking.pptxNorton Guimarães
 
Poster - Diversidade na Escola Ulbra - Karine e Norton.pdf
Poster - Diversidade na Escola Ulbra - Karine e Norton.pdfPoster - Diversidade na Escola Ulbra - Karine e Norton.pdf
Poster - Diversidade na Escola Ulbra - Karine e Norton.pdfNorton Guimarães
 
Novas Tendências na Educação pós pandemia
Novas Tendências na Educação pós pandemiaNovas Tendências na Educação pós pandemia
Novas Tendências na Educação pós pandemiaNorton Guimarães
 
Programação Web com PHP 7.x
Programação Web com PHP 7.xProgramação Web com PHP 7.x
Programação Web com PHP 7.xNorton Guimarães
 
Ensino híbrido planejamento e criação de aulas
Ensino híbrido   planejamento e criação de aulasEnsino híbrido   planejamento e criação de aulas
Ensino híbrido planejamento e criação de aulasNorton Guimarães
 
Ferramentas para testes de software
Ferramentas para testes de softwareFerramentas para testes de software
Ferramentas para testes de softwareNorton Guimarães
 
A evolução histórica da EaD
A evolução histórica da EaDA evolução histórica da EaD
A evolução histórica da EaDNorton Guimarães
 
A EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL G
A EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL GA EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL G
A EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL GNorton Guimarães
 
COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB
COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB
COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB Norton Guimarães
 
Tutor EaD - importância e funções
Tutor EaD - importância e funçõesTutor EaD - importância e funções
Tutor EaD - importância e funçõesNorton Guimarães
 
Produção de conteúdo colaborativo em sala de aula
Produção de conteúdo colaborativo em sala de aulaProdução de conteúdo colaborativo em sala de aula
Produção de conteúdo colaborativo em sala de aulaNorton Guimarães
 
O cenário atual da ead no Brasil
O cenário atual da ead no BrasilO cenário atual da ead no Brasil
O cenário atual da ead no BrasilNorton Guimarães
 
Ensino Híbrido - Visão Geral
Ensino Híbrido - Visão GeralEnsino Híbrido - Visão Geral
Ensino Híbrido - Visão GeralNorton Guimarães
 
Avaliação da aprendizagem na EAD
Avaliação da aprendizagem na EADAvaliação da aprendizagem na EAD
Avaliação da aprendizagem na EADNorton Guimarães
 
Apoio do computador e da web à atividade educativa
Apoio do computador e da web à atividade educativaApoio do computador e da web à atividade educativa
Apoio do computador e da web à atividade educativaNorton Guimarães
 
O uso de recursos multimídia em sala de aula
O uso de recursos multimídia em sala de aulaO uso de recursos multimídia em sala de aula
O uso de recursos multimídia em sala de aulaNorton Guimarães
 
Planejamento e organização de sistemas de ead
Planejamento e organização de sistemas de eadPlanejamento e organização de sistemas de ead
Planejamento e organização de sistemas de eadNorton Guimarães
 
As políticas públicas em EaD no Brasil
As políticas públicas em EaD no BrasilAs políticas públicas em EaD no Brasil
As políticas públicas em EaD no BrasilNorton Guimarães
 

Mais de Norton Guimarães (20)

DIVERSIDADE DA ESCOLA - Meninos vestem azul
DIVERSIDADE DA ESCOLA - Meninos vestem azulDIVERSIDADE DA ESCOLA - Meninos vestem azul
DIVERSIDADE DA ESCOLA - Meninos vestem azul
 
Mini Curso - Cultura Maker e Design Thinking.pptx
Mini Curso - Cultura Maker e Design Thinking.pptxMini Curso - Cultura Maker e Design Thinking.pptx
Mini Curso - Cultura Maker e Design Thinking.pptx
 
Poster - Diversidade na Escola Ulbra - Karine e Norton.pdf
Poster - Diversidade na Escola Ulbra - Karine e Norton.pdfPoster - Diversidade na Escola Ulbra - Karine e Norton.pdf
Poster - Diversidade na Escola Ulbra - Karine e Norton.pdf
 
Novas Tendências na Educação pós pandemia
Novas Tendências na Educação pós pandemiaNovas Tendências na Educação pós pandemia
Novas Tendências na Educação pós pandemia
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
Programação Web com PHP 7.x
Programação Web com PHP 7.xProgramação Web com PHP 7.x
Programação Web com PHP 7.x
 
Ensino híbrido planejamento e criação de aulas
Ensino híbrido   planejamento e criação de aulasEnsino híbrido   planejamento e criação de aulas
Ensino híbrido planejamento e criação de aulas
 
Ferramentas para testes de software
Ferramentas para testes de softwareFerramentas para testes de software
Ferramentas para testes de software
 
A evolução histórica da EaD
A evolução histórica da EaDA evolução histórica da EaD
A evolução histórica da EaD
 
A EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL G
A EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL GA EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL G
A EXPERIÊNCIA NA DEFINIÇÃO DE UM PROCESSO BASEADO NO MPS.BR NÍVEL G
 
COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB
COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB
COMÉRCIO ELETRÔNICO DE PRODUTOS VIA WEB
 
Tutor EaD - importância e funções
Tutor EaD - importância e funçõesTutor EaD - importância e funções
Tutor EaD - importância e funções
 
Produção de conteúdo colaborativo em sala de aula
Produção de conteúdo colaborativo em sala de aulaProdução de conteúdo colaborativo em sala de aula
Produção de conteúdo colaborativo em sala de aula
 
O cenário atual da ead no Brasil
O cenário atual da ead no BrasilO cenário atual da ead no Brasil
O cenário atual da ead no Brasil
 
Ensino Híbrido - Visão Geral
Ensino Híbrido - Visão GeralEnsino Híbrido - Visão Geral
Ensino Híbrido - Visão Geral
 
Avaliação da aprendizagem na EAD
Avaliação da aprendizagem na EADAvaliação da aprendizagem na EAD
Avaliação da aprendizagem na EAD
 
Apoio do computador e da web à atividade educativa
Apoio do computador e da web à atividade educativaApoio do computador e da web à atividade educativa
Apoio do computador e da web à atividade educativa
 
O uso de recursos multimídia em sala de aula
O uso de recursos multimídia em sala de aulaO uso de recursos multimídia em sala de aula
O uso de recursos multimídia em sala de aula
 
Planejamento e organização de sistemas de ead
Planejamento e organização de sistemas de eadPlanejamento e organização de sistemas de ead
Planejamento e organização de sistemas de ead
 
As políticas públicas em EaD no Brasil
As políticas públicas em EaD no BrasilAs políticas públicas em EaD no Brasil
As políticas públicas em EaD no Brasil
 

Manipulação de datas em java

  • 1. Manipulação de datas em Java IF Goiano campus Morrinhos Técnico em Informática Integrado ao Ensino Médio Linguagens e Técnicas de Programação Prof. Me. Norton Guimarães 1
  • 2. O que veremos?  Manipulação de datas  java.util.Date;  java.util.Calendar;  java.util.GregorianCalendar;  java.util.Locale  Máscaras de datas  concatenação de string  java.text.SimpleDateFormat  java.text.DateFormat Técnico em Informática – IF Goiano campus Morrinhos 2
  • 3. Manipulação de datas Técnico em Informática – IF Goiano campus Morrinhos 3
  • 4. Classe java.util.Date  A JDK (Java Development Kit), fornece as classes java.util.Date para o armazenamento e manipulação de datas.  A classe Date, permite manipular datas em diversos formatos, podendo ser utilizada em diversos padrões mundiais. Técnico em Informática – IF Goiano campus Morrinhos 4
  • 5. Imprimir data com java.util.Date import java.util.Date; public class Funcionarios { public void imprimirDataHoje() { Date dataHoje = new Date(); System.out.println(dataHoje); } } Técnico em Informática – IF Goiano campus Morrinhos 5
  • 6. Imprimir data com java.util.Calendar import java.util.Date; Import java.util.Calendar; public class Funcionarios { public void imprimirDataCalendar(){ Calendar calendario = Calendar.getInstance(); calendario.set(2015, 11, 12); Date dataCalendario = calendario.getTime(); System.out.println(dataCalendario); } } Técnico em Informática – IF Goiano campus Morrinhos 6
  • 7. Imprimir data com java.util.GregorianCalendar Import java.util.GregorianCalendar; public class Funcionarios { public void imprimirDataGregoriana() { GregorianCalendar dataGC = new GregorianCalendar(); //Mostra o dia da semana: 1 = Domingo, etc System.out.println(dataGC.get(dataGC.DAY_OF_WEEK)); //Verifica se o ano é bissexto System.out.println(dataGC.isLeapYear(2009)); //Atribui uma data diferente da atual dataGC.set(2015, 11, 12); } } //Mostra o dia System.out.println(dataGC.get(dataGC.DATE)); //Mostra o Mês: 1 = Janeiro, 2 = Fevereiro, etc System.out.println(dataGC.get(dataGC.MONTH)); //Mostra o ano System.out.println(dataGC.get(dataGC.YEAR)); Técnico em Informática – IF Goiano campus Morrinhos 7
  • 8. Comparar Datas import java.util.Date; Import java.util.Calendar; public class Funcionarios { public void compararDatas(){ Date dataUm = new Date(); Calendar calendario = Calendar.getInstance(); calendario.set(2015, 10, 25); Date dataDois = calendario.getTime(); boolean dataSaoIguais = dataUm.equals(dataDois); boolean dataDoisPosterior = dataUm.after(dataDois); boolean dataDoisAnterior = dataUm.before(dataDois); } } Técnico em Informática – IF Goiano campus Morrinhos 8
  • 9. Internacionalização de datas import java.util.Calendar; import java.util.Locale; import java.text.DateFormat; import java.util.Date; public class Funcionarios { public void dataInternaciona() { Calendar c = Calendar.getInstance(); Date data = c.getTime(); Locale brasil = new Locale("pt", "BR"); //Retorna do país e a língua Locale eua = Locale.US; DateFormat f2 = DateFormat.getDateInstance(DateFormat.FULL, brasil); System.out.println("Data e hora brasileira: " + f2.format(data)); DateFormat f3 = DateFormat.getDateInstance(DateFormat.FULL, eua); System.out.println("Data e hora americana: " + f3.format(data)); } }Técnico em Informática – IF Goiano campus Morrinhos 9
  • 10. Máscaras de datas Técnico em Informática – IF Goiano campus Morrinhos 10
  • 11. Conversão de data para string com concatenação import java.util.Date; public class Funcionarios { public void imprimeData(){ Date dataUm = new Date(); String dataString = “Data: ” + dataUm; System.out.printiln(dataString); } } Técnico em Informática – IF Goiano campus Morrinhos 11
  • 12. Formatação de data com a classe java.text.SimpleDateFormat import java.util.Date; Import java.text.SimpleDateFormat; public class Funcionarios { public void formataData(){ Date dataUm = new Date(); SimpleDateFormat formataDatas = new SimpleDateFormat("dd/MM/yyyy"); //Outras máscaras podem ser fornecidas: “yyyy-MM-dd”, “dd/MM/yyyy hh:mm:ss”, “hh:mm:ss”. String dataFormatada = formataDatas.format(dataUm); System.out.println(dataFormatada); } } Técnico em Informática – IF Goiano campus Morrinhos 12
  • 13. Legenda das Máscaras de datas  d  dia do mês  D  dia do ano  F  dia da semana no mês  a  marcador de am/pm  w  semana do ano  W  semana do mês  M  mês  m  minuto  y  ano  h  hora em am/pm (1 a 12)  H  hora do dia (0 a 23)  k  hora do dia (1 a 24)  K  hora em am/pm (0 a 11)  s  segundos  S  milissegundos Técnico em Informática – IF Goiano campus Morrinhos 13
  • 14. Formatação Date com a classe java.text.DateFormat import java.util.Date; Import java.text.DateFormat; import java.util.Calendar; public class Funcionarios { public void converterStringParaData(){ Calendar c = Calendar.getInstance(); c.set(2015, Calendar.FEBRUARY, 21); Date data = c.getTime(); DateFormat formataData = DateFormat.getDateInstance(); //Formata a data System.out.println("Data atual com formatação: "+ formataData.format(data)); DateFormat dtHora = DateFormat.getDateTimeInstance(); //Formata Data e Hora System.out.println(dtHora.format(data)); } }Técnico em Informática – IF Goiano campus Morrinhos 14
  • 15. Conversão de string para Date com a classe java.text.SimpleDateFormat import java.util.Date; Import java.text.SimpleDateFormat; public class Funcionarios { public void converterStringParaData(){ String dataString = "15/11/2014"; SimpleDateFormat formataDatas = new SimpleDateFormat("dd/MM/yyyy"); Date data = null; try { data = formataDatas.parse(dataString); } catch (ParseException ex) { System.out.println(ex); } System.out.println(data); } } Técnico em Informática – IF Goiano campus Morrinhos 15
  • 16. Diferenças entre datas import java.util.Date; import java.text.SimpleDateFormat; public class Funcionarios { public void diferencaEntreDatas() { SimpleDateFormat sdf = new SimpleDateFormat("dd/mm/yyyy"); try { Date date1 = sdf.parse("05/11/2015"); Date date2 = sdf.parse("06/11/2015"); long differenceMilliSeconds = date2.getTime() - date1.getTime(); System.out.println("diferenca em milisegundos: " + differenceMilliSeconds); System.out.println("diferenca em segundos: " + (differenceMilliSeconds / 1000)); System.out.println("diferenca em minutos: " + (differenceMilliSeconds / 1000 / 60)); System.out.println("diferenca em horas: " + (differenceMilliSeconds / 1000 / 60 / 60)); System.out.println("diferenca em dias: " + (differenceMilliSeconds / 1000 / 60 / 60 / 24)); } catch (ParseException e) { e.printStackTrace(); } } } Técnico em Informática – IF Goiano campus Morrinhos 16
  • 17. Referências  DEITEL, H. M.; DEITEL, P. J. Java: como programar. 6. ed. São Paulo, SP: Pearson, 2005. xl, 1110 p. ISBN 9798576050193.  HANSEN, Vitor Yudi. Manipulando datas em java. DevMedia. Disponível em: http://www.devmedia.com.br/manipulando-datas-em-java/21765. Acesso em: 11 nov. 2015.  PALMEIRA, Thiago Vinícius Varallo. DevMedia. Disponível em: http://www.devmedia.com.br/trabalhando-com-as-classes-date-calendar-e- simpledateformat-em-java/27401. Acesso em: 11 nov. 2015.  SANTOS, Rafael. Introdução à programação orientada a objetos usando Java. Rio de Janeiro, RJ: Elsevier, 2003. 319 p. ISBN 9788535212068.  SOUSA, Sidney Roberto de. Aula extra – Manipulação de datas em java. Mato Grosso. Disponível em: http://pt.slideshare.net/darknessdescend/manipulao- de-datas-em-java. Acesso em: 11 nov. 2015. Técnico em Informática – IF Goiano campus Morrinhos 17