Top Posts

Tratamento de exceções em Java

Continue lendo

Manipulando Datas

Posted by camilolopes | Posted in Java | Posted on 05-05-2008

1

Salve Salve! Galera, hoje venho ensinar alguns recursos do Java como: datas e manipulação. Este post é bem direcionado para quem está começando os estudos com java (lendo o livro da:kathy,deitel etc).
Conforme ja citiei, nao é objetivo do blog apenas atrair os visitantes intermediário, avançado Java (T.I), e sim tentar a cada semana atender a cada nivel, seja aquele que for fazer a certificação, que esteja migrando para java, ou estudando java. Espero gostem do post qualquer critica, sugestão para entrar em contato.

let’s go…

Datas e Formatação.

Para a manipulação de datas temos a classe Date, porém essa aqui os seus métodos foram bastante depreciados, por que é uma “Mão na roda”, tentar manipular datas coma essa classe, mas a usaremos junto com a class Calendar que tem métodos mais eficientes.

Antes de começar algumas dicas:

– o argumento do construtor da class Date somente aceita long (não invente de colocar float ou double).

– se deixar o construtor vazio ele mostra a data atual.

Dedos nos teclados e vamos lá:

import java.util.Date;

public class Dat {

public static void main(String[] args) {

Date d = new Date();

System.out.println(d.toString());

//exibi a hora atual,mes,dia e ano

}}

Prontos exibiram a data atual. Agora vamos manipular essa data:

import java.util.Calendar;

import java.util.Date;

public class Calend {

public static void main(String[] args) {

Date d = new Date();

Calendar c = Calendar.getInstance();

/*digo que minha variável de referência Calendar vai ser configurada com o valor da data, ou seja, data atual já que temos ().*/

c.setTime(d);

//add 1 mes

c.add(Calendar.MONTH,1);

//add 1 dia

c.add(Calendar.DAY_OF_WEEK,1);

//aqui pego o valor alterado e digo que meu objeto d(Date) vai receber ele

d=c.getTime();

System.out.println(d.toString());

}

/* ele vai exibir que dia vai cair à data do dia do mês seguinte */}

Agora vamos entender a class Calendar:

– ela é uma class abstract (abstrata), então não pode criar instancia dessa classe usando new. Já que algo abstrato não tem lógica usar o new, já que a finalidade do new é para aquilo que é concreto.

-Então usamos um método de fábrica que criar uma instancia da class Calendar onde posso chamar os métodos estáticos para manipular minha data.

-Essa parte aqui é mais importante vamos formatar as datas. O que você quer dizer com formatar Camilo? É colocar as datas como aprendemos no colégio, “07 de junho de 2007, 06/06/07 etc.”

Usando a class DateFormat – é essa classe que vai nos auxiliar na formatação de datas, é simples de entender essa classe. Somente para lembrar, ela segue a mesma regra da classe Calendar é abstract. Ou seja, vai usar um método de fábrica para instanciar um objeto (não usar new).

import java.util.Date;

import java.text.DateFormat;

public class DatFormat {

public static void main(String[] args) {

Date d = new Date();

//class DateFormat abstract

DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);

//imprime a data formatada com o estilo da class DateFormat(df)

System.out.println(df.format(d));

}}

Estilos da class DateFormat:

SHORT,MEDIUM,LONG,FULL.

Para melhor compreensão nada melhor que a prática, então é só criar pequenos programas usando datas, e ver que o código em si não é nem 10 linhas para ter uma data no seu programa. Teste os outros estilos, MEDIUM, LONG, FULL e perceba a diferença.

Algumas dicas (pode ser implementadas no prompt de comando):

– se você sabe manipular arquivos crie um programa onde grava a data que o arquivo foi criado.

– faça um programa que exibe a data em sua tela inicial e quando for fechar o programa também

– fala um programa onde você possa monitorar quanto tempo ele ficou rodando. Ex.: O usuário executou e no final exibir o tempo q ele ficou usando o programa.

Related Posts with Thumbnails

Comments (1)

Eu prefiro usar SimpleDateFormat.
Muito mais facil. 😀

Write a comment