Facebook
From stary pijany, 6 Months ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 86
  1. package pl.edu.uwm.wmii.dobrenkocezary.labolatoria07;
  2.  
  3. import java.time.Instant;
  4. import java.time.LocalDate;
  5. import java.time.Month;
  6. import java.time.ZoneId;
  7. import java.util.Date;
  8.  
  9. public class Osoba implements Comparable<Osoba> {
  10.     private String nazwisko;
  11.     private LocalDate dataUrodzenia;
  12.  
  13.     Date date = new Date();
  14.     Instant instant = date.toInstant();
  15.     ZoneId defaultZoneId = ZoneId.systemDefault();
  16.     LocalDate localDate = instant.atZone(defaultZoneId).toLocalDate();
  17.  
  18.     Osoba(String nazwisko, LocalDate dataur){
  19.         this.nazwisko = nazwisko;
  20.         this.dataUrodzenia = dataur;
  21.     }
  22.  
  23.     public int compareTo(Osoba target){
  24.         int cmp = 0;
  25.         if (target.nazwisko != this.nazwisko){
  26.             cmp++;
  27.         }
  28.         if (target.dataUrodzenia.compareTo(this.dataUrodzenia) != 0){
  29.             cmp++;
  30.         }
  31.         return cmp;
  32.     }
  33.     public Boolean equals(Osoba t){
  34.         if (this.nazwisko != t.nazwisko || this.dataUrodzenia.compareTo(t.dataUrodzenia) != 0){
  35.             return false;
  36.         }
  37.         return true;
  38.     }
  39.     public String toString(){
  40.         String result = "";
  41.         result += getClass().getName();
  42.         result += (" [" + this.nazwisko + "][" + dataUrodzenia.toString() + "]");
  43.         return result;
  44.     }
  45.     public int ileLat(){
  46.         int x = dataUrodzenia.getYear();
  47.         int y = localDate.getYear();
  48.         return (y - x);
  49.     }
  50.  
  51.     public int ileMiesiecy(){
  52.         Month x = dataUrodzenia.getMonth();
  53.         Month y = localDate.getMonth();
  54.  
  55.  
  56.         int data1 = change(x);
  57.         int data2 = change(y);
  58.  
  59.         return data2-data1;
  60.     }
  61.  
  62.     public int change(Month x){
  63.         String[] tab = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
  64.         for(int i = 1; i < tab.length+1; i++){
  65.             String test1 = tab[i].toUpperCase();
  66.             String test2 = x.toString();
  67.             if(test1.equals(test2) == true){
  68.                 return i;
  69.             }
  70.         }
  71.         return 0;
  72.     }
  73.  
  74.     public int ileDni(){
  75.         int x = dataUrodzenia.getDayOfYear();
  76.         int y = localDate.getDayOfYear();
  77.         return (y - x);
  78.     }
  79.  
  80. }