O JDK8 foi lançado e eu escrevi um pequeno exemplo de como usar a função de tempo DateTime
A cópia do código é a seguinte:
pacote datetime;
Importar java estático.Time.Temporal.TemporaladJusters.LastDayofmonth;
importar java estático.Time.Temporal.Temporaladjusters.PreviousorMame;
importar java.time.dayofWeek;
importar java.Time.Duration;
importar java.time.localdate;
importar java.time.localdateTime;
importar java.time.localtime;
importar java.time.month;
importar java.Time.OffSetTime;
importar java.time.period;
importar java.time.zoneid;
importar java.time.zoneoffset;
importar java.time.zonedDateTime;
importar java.time.temporal.chronounit;
classe pública DataTatimes {
public static void main (string [] args) {
// Crie um objeto de tempo
LocalDateTime TimePoint = LocalDateTime.now ();
System.out.println ("-Hora atual ----");
System.out.println (TimePoint);
System.out.println ("");
System.out.println ("-tempo personalizado ----");
System.out.println (LocalDate.Of (2012, Month.DECEMBRO, 12);
// valores
System.out.println (LocalDate.ofepochday (150));
System.out.println (Localtime.of (17, 18));
System.out.println (Localtime.parse ("10:15:30");
System.out.println ("");
System.out.println ("-Obtenha as várias partes do tempo ----");
System.out.println (timepoint.tolocaldate ());
System.out.println (timepoint.getMonth ());
System.out.println (timepoint.getdayofmonth ());
System.out.println (timepoint.getSecond ());
System.out.println ("");
System.out.println ("--- Defina e retorne um novo objeto de tempo ---");
LocalDateTime thepast = timepoint.withdayofmonth (10) .withyear (2010);
System.out.println (thepast);
System.out.println ("--- Adicionar 3 semanas ---");
LocalDateTime aindanOther = thepast.plusweeks (3) .plus (3,
Chronounit.weeks);
System.out.println (ainda);
System.out.println ("");
System.out.println ("--- Use função de ajuste de tempo ---");
System.out.println (TimePoint);
System.out.println (timepoint.with (lastdayofmonth ()));
System.out.println (timepoint.with (anteriorsames (DayofWeek.wednesday)));
System.out.println (timepoint.with (localtime.now ()));
System.out.println ("");
System.out.println ("--- TIME TRUNCADO EXATO BIT--");
System.out.println (TimePoint);
LOCALDATETIME TRUNCATETIMETOMINUTES = TIMEPONSTE
.truncado para (Chronounit.Minutes);
System.out.println (truncated timeTominutes);
LOCALDATETIME TRUNCATEDTIMETOSEGONDS = TIMEPONSTE
.truncado para (Chronounit.Segunds);
System.out.println (truncadoTimeToSegunds);
System.out.println ("");
System.out.println ("--- Use fuso horário ---");
ZonedDateTime zoned_now = zonedDateTime.of (localDateTime.now (),
Zoneid.of ("UTC+08: 00"));
System.out
.println (zoneed_now.withzonesameInstant (zoneid.of ("utc+00: 00")));
System.out.println (zoned_now.getOffSet ());
System.out.println ("");
System.out.println ("--- O deslocamento do fuso horário é usado no tempo ---");
OffsetTime Time = offsetTime.now ();
Zoneoffset offset = zoneoffset.of ("+02:00");
System.out.println (tempo);
System.out.println (time.withoffSetSameInstant (deslocamento));
System.out.println ("");
System.out.println ("--- adição de tempo e subtração ---");
timepoint = localDateTime.now ();
System.out.println (TimePoint);
// 3 anos, 2 meses, 1 dia
Período de período1 = período.of (3, 2, 1);
System.out.println (timepoint.plus (período1));
Duração da duração = duração.ofsegunds (3, 5);
System.out.println (timepoint.plus (duração));
Duração Sixhours = duração.between (
ZonedDateTime.of (localDateTime.now (), zoneid.of ("UTC+08: 00")),
ZonedDateTime.of (localDateTime.now (), zoneid.of ("UTC+02: 00")));
System.out.println (timepoint.plus (seis horas));
System.out.println ("");
}
}
Resultados de execução
A cópia do código é a seguinte:
-Tempo corrente ---
2014-03-25T17: 03: 40.553
-Tempo de Custom ---
2012-12-12
1970-05-31
17:18
10:15:30
-Obtenha as várias partes da época ---
2014-03-25
MARCHAR
25
40
--- Defina e retorne um novo objeto de tempo ---
2010-03-10T17: 03: 40.553
--- Adicione mais 3 semanas ---
2010-04-21T17: 03: 40.553
--- Use função de ajuste de tempo ---
2014-03-25T17: 03: 40.553
2014-03-31T17: 03: 40.553
2014-03-19T17: 03: 40.553
2014-03-25T17: 03: 40.583
--- Bit exato de tempo truncando-
2014-03-25T17: 03: 40.553
2014-03-25T17: 03
2014-03-25T17: 03: 40
--- Use fuso horário ---
2014-03-25T09: 03: 40.583Z [UTC]
+08: 00
--- O deslocamento do fuso horário é usado no tempo ---
17: 03: 40.585+08: 00
11: 03: 40.585+02: 00
--- Adicionar ou subtrair tempo ---
2014-03-25T17: 03: 40.585
2017-05-26T17: 03: 40.585
2014-03-25T17: 03: 43.585000005
2014-03-25T23: 03: 40.586