MitrovG

[НП] - LocalDate methods - Java8 Date&Time API

Nov 14th, 2016
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.40 KB | None | 0 0
  1. import java.time.LocalDate;
  2. import java.time.*;
  3. import java.time.temporal.TemporalAdjusters;
  4. import java.time.temporal.*;
  5.  
  6. public class LocalDateTest {
  7.    
  8.     public static void main(String[] args) {
  9.         System.out.println(create());
  10.         System.out.println(parse());
  11.         System.out.println(with().getYear());
  12.         System.out.println(withAdjuster());
  13.         System.out.println(plus());
  14.         System.out.println(minus());
  15.         System.out.println(plusPeriod());
  16.         System.out.println(isAfter());
  17.         System.out.println(until());
  18.     }
  19.  
  20.     static LocalDate create() {
  21.        /**
  22.         * Create a {@link LocalDate} of 2015-06-18 by using {@link LocalDate#of}
  23.         */
  24.         return LocalDate.of(2015,6,18);
  25.     }
  26.  
  27.     static LocalDate parse() {
  28.         /**
  29.          * Create a {@link LocalDate} of 2015-06-18 from String by using {@link LocalDate#parse}
  30.          */
  31.         return LocalDate.parse("2015-06-18");
  32.     }
  33.  
  34.     static LocalDate with() {
  35.         LocalDate ld = DateAndTimes.LD_20150618;
  36.         /**
  37.          * Create a {@link LocalDate} from {@link ld} with year 2015
  38.          * by using {@link LocalDate#withYear} or {@link LocalDate#with}
  39.          */
  40.  
  41.         return ld.withYear(2015);
  42.     }
  43.  
  44.     static LocalDate withAdjuster() {
  45.         LocalDate ld = DateAndTimes.LD_20150618;
  46.         /**
  47.          * Create a {@link LocalDate} from {@link ld} adjusted into first day of next year
  48.          * by using {@link LocalDate#with} and {@link TemporalAdjusters#firstDayOfNextYear}
  49.          */
  50.         return ld.with(TemporalAdjusters.firstDayOfNextYear());
  51.     }
  52.  
  53.     static LocalDate plus() {
  54.         LocalDate ld = DateAndTimes.LD_20150618;
  55.  
  56.         /**
  57.          * Create a {@link LocalDate} from {@link ld} with 10 month later
  58.          * by using {@link LocalDate#plusMonths} or {@link LocalDate#plus}
  59.          */
  60.         return ld.plus(10,ChronoUnit.MONTHS);
  61.     }
  62.  
  63.     static LocalDate minus() {
  64.         LocalDate ld = DateAndTimes.LD_20150618;
  65.  
  66.         /**
  67.          * Create a {@link LocalDate} from {@link ld} with 10 days before
  68.          * by using {@link LocalDate#minusDays} or {@link LocalDate#minus}
  69.          */
  70.         return ld.minusDays(10);
  71.     }
  72.  
  73.     static LocalDate plusPeriod() {
  74.         LocalDate ld = DateAndTimes.LD_20150618;
  75.  
  76.         /**
  77.          * Define a {@link Period} of 1 year 2 month 3 days
  78.          * Create a {@link LocalDate} adding the period to {@link ld} by using {@link LocalDate#plus}
  79.          */
  80.         return ld.plus(1, ChronoUnit.YEARS).plus(2,ChronoUnit.MONTHS).plus(3,ChronoUnit.DAYS);
  81.     }
  82.  
  83.     static boolean isAfter() {
  84.         LocalDate ld = DateAndTimes.LD_20150618;
  85.         LocalDate ld2 = DateAndTimes.LD_20150807;
  86.  
  87.         /**
  88.          * Check whether {@link ld2} is after {@link ld} or not
  89.          * by using {@link LocalDate#isAfter} or {@link LocalDate#isBefore}
  90.          */
  91.         return ld2.isAfter(ld);
  92.     }
  93.  
  94.     static Period until() {
  95.         LocalDate ld = DateAndTimes.LD_20150618;
  96.         LocalDate ld2 = DateAndTimes.LD_20150807;
  97.  
  98.         /**
  99.          * Create a period from {@link ld} till {@link ld2}
  100.          * by using {@link LocalDate#until}
  101.          */
  102.         return ld.until(ld2);
  103.     }
  104.  
  105. }
  106.  
  107. class DateAndTimes {
  108.     public static final LocalDate LD_20150618 = LocalDate.of(2015, 6, 18);
  109.     public static final LocalDate LD_20150807 = LocalDate.of(2015, 8, 7);
  110. }
Advertisement
Add Comment
Please, Sign In to add comment