Praca z datami w Javie 8

Spisie treści
Praca z datami zawsze była punktem zwrotnym w karierze programistów. Dzieje się tak częściowo dlatego, że we wcześniejszych wersjach Jawa to było trochę zagmatwane i niespójne. Jednak w nowej wersji a API co pozwala nam w pełni wykorzystać język za pomocą jaśniejszych i łatwiejszych w użyciu metod.
To sprawia, że ​​praca z formaty daty i czasu w Jawa nie bądź torturą. W tym celu musimy przestudiować nowe formy i możliwości, jakie daje nam język, w celu przekształcenia jednego z punktów generujących najwięcej zamieszania w coś, co potrafimy właściwie opanować.
Aby uprościć pracę, zespół programistów Jawa dostarczył nam wielu powszechnych metod, z których możemy korzystać, zarówno podczas pracy z Daktyle, tak jak wtedy, gdy pracujemy godziny. To sprawia, że ​​wysiłek związany z nauką jest mniejszy ze względu na podobne zachowanie dla obu typów obiektów.
Poniżej wymienimy niektóre metody, które najbardziej się wyróżniają, wraz z małym wyjaśnieniem, do czego możemy ich użyć, dzięki czemu możemy mieć ogólny pomysł, gdy przejdziemy później do części praktycznej.
wTa metoda pozwala nam na połączenie obiektu, który go wywołuje, z innym obiektem.
formatPozwala nam na użycie niektórych parametrów, aby w wyniku uzyskać datę lub godzinę o określonym formacie, którego potrzebujemy.
dostwaćPozwala nam uzyskać określony przez nas element.
jestPozwala nam sprawdzić, czy obiekt jest typu, z którym dokonujemy porównania.
plusDaje nam możliwość dodania dodatku do obiektu, który go wywołuje i zwraca jego kopię z już dodaną wartością.
doPozwala nam dokonać konwersji z jednego typu na inny.
Teraz z tą wiedzą możemy przejść do innych zagadnień w ramach tego samego tematu dat i godzin w Jawa.
Jak już wyjaśnialiśmy formy, które są używane w Jawa Teraz zmieniły się dla nowej wersji, dlatego powtarzając przykłady, które podamy, potrzebujemy wersji 8 pakietu językowego, w przeciwnym razie otrzymamy błąd podobny do następującego:

Wyjaśniłem punkt, zobaczmy poniżej, co musimy zrobić, aby uzyskać informacje o aktualna data i godzina w Javie.
W tym celu stworzymy klasę, w której będziemy tworzyć instancje obiektów typu Lokalna data, Czas lokalny Tak Lokalna data i godzina. Każdy z nich poda nam odpowiednio aktualną datę, aktualny czas oraz aktualną datę i godzinę.
Jest to przydatne w przypadkach takich jak dzienniki systemowe, w którym musimy uchwycić dokładny moment, w którym podejmowana jest akcja lub ma miejsce zdarzenie, które chcemy zarejestrować. Aby osiągnąć cel, możemy stworzyć kod podobny do poniższego:
 import java.time.*; public class CurrentDate {public static void main (args String []) {LocalDate currentDate = LocalDate.now (); System.out.println (bieżąca data); LocalTime currentTime = LocalTime.now (); System.out.println (bieżący czas); LocalDateTime teraz = LocalDateTime.now (); System.out.println (teraz); }} 

Jak widać, jedyne co robimy to deklarujemy nasze obiekty wyżej wymienionych typów i przypisujemy im wartość zwracaną metodą teraz (), czyli ten, który tak naprawdę odpowiada za podanie aktualnej daty i czasu, wtedy martwimy się tylko o wydrukowanie każdego z zadeklarowanych obiektów.
WażnyBardzo ważne jest, aby dołączyć pakiet java.time w całości, abyśmy mogli uzyskać dostęp do wszystkich funkcji, których używamy, również jeśli mamy wątpliwości w oficjalnej dokumentacji, możemy znaleźć więcej szczegółów na temat tego samego.
Zobaczmy jak wygląda wykonanie naszego programu:

Kolejnym aspektem, który zawsze musimy brać pod uwagę, jest sposób wyświetlania informacji. W kwestii dat mamy wiele sposobów, jednak niektóre są wygodniejsze niż inne w niektórych sytuacjach. To przez większość czasu prowadzi nas do wykonywania dodatkowych operacji, które zmuszają nas do napisania dodatkowych linii kodu, które w Jawa 8 nie jest już tak skomplikowane.
W zależności od aplikacji, którą rozwijamy, będziemy chcieli pokazywać miesiąc po jego numerze w kalendarzu lub po nazwie, ale nazwa może być pełna lub skrócona, a także dzień lub rok, wszystko to daje nam bardzo duża liczba opcji, wszystkie jednakowo ważne. Aby rozwiązać ten problem, możemy skorzystać z formatera daty.
Do formatowania dat mamy kilka symboli wieloznacznych lub parametrów, które pozwalają nam uzyskać wartości wyjaśnione w poprzednim akapicie. Zobaczmy, które są najważniejsze.
  • Tak, umożliwia nam dostęp do roku w formacie cztero- lub dwucyfrowym (2014 lub 14).
  • D, pozwala nam uzyskać numer dnia w roku (225).
  • D, W przeciwieństwie do poprzedniego zwraca numer dnia danego miesiąca (27).
  • L, pomaga nam uzyskać miesiąc roku w postaci liczbowej, m podaje nam miesiąc w tekście.
  • h, daje nam czas.
  • s, daje nam sekundy.
  • m, pozwala nam uzyskać protokół.
  • do, podaje nam godzinę przed południem lub po południu.
  • z, umożliwia nam dostęp do nazwy strefy czasowej.
Ponieważ znamy podstawowe parametry formatu, spróbujemy wykonać nowe ćwiczenie, w poniższym kodzie zrobimy kilka formatów, przede wszystkim uzyskamy aktualną datę i przekonwertujemy ją na format rok miesiąc dzień z ukośnikami zamiast myślników, będziemy analizować statyczną datę pochodzącą z ciągu znaków o tym samym formacie, a na koniec pokażemy pełną datę, w tym czy jest to am czy pm, aby wykorzystać symbole wieloznaczne, które wyjaśniłem wcześniej. Zobaczmy odpowiedni kod:
 import java.time.*; import java.time.format.*; public class DateFormatter {public static void main (args String []) {DateTimeFormatter sformatowana data = DateTimeFormatter.ofPattern ("rrrr / LL / dd"); System.out.println (FormattedDate.format (LocalDate.now ())); System.out.println (LocalDate.parse („2014/11/15”, sformatowana data)); Strefa czasowa DateTimeFormatter = DateTimeFormatter.ofPattern ("d MMMM, rrrr h: mm a"); System.out.println (ZonedDateTime.now (). Format (strefa czasowa)); }} 

Pierwszą rzeczą, którą możemy podkreślić, jest to, że musimy zaimportować oba pakiety java.time ze wszystkimi jego klasami jako pakiet java.time.format ze wszystkimi jego klasami. Ćwiczenie można wykonać importując poszczególne klasy, ale zostawiamy to jako pracę domową, także dlatego mają za zadanie zapoznać się z oficjalną dokumentacją.
Następnie widzimy, że tworzymy obiekt typu Format daty i godziny i używamy metody zWzoru () który akceptuje określone symbole wieloznaczne, widzimy, że umieszczamy symbole wieloznaczne w dwóch egzemplarzach jako rrrr aby uzyskać cztery cyfry bieżącego roku lub również mm, aby uzyskać dwie cyfry minut.
Na koniec wypisujemy każdą z dat wraz z ich formatami i podczas wykonywania naszego programu otrzymujemy:

W tym miejscu możemy obserwować wszystkie zmiany, które wprowadziliśmy w sposobie formatowania dat, dzięki czemu możemy nadać mu większe znaczenie i czytelność zarówno na poziomie ludzkim, jak i dla silników Baza danych Co MySQL musisz otrzymać domyślną datę w formacie rrrr-LL-dd.
Kolejne zastosowanie, które możemy nadać nowym klasom daty i godziny Jawa jest możliwość korzystania z dat pochodzących z ciągu tekstowego, które mogą być utworzone przez użytkownika, pochodzą z pliku tekstowego itp. Ale ważne jest to, że musimy nimi manipulować i do tego możemy wykorzystać wszystkie narzędzia, które mamy pod ręką.
Zobaczmy w poniższym kodzie, jak korzystając z tego, co widzieliśmy, możemy dokonać zmian daty z ciągu tekstowego.
 import java.time.*; import java.time.format.*; public class StaticDate {public static void main (String [] args) {String StartDate = "1906-12-31"; LocalDate wziętaDate = LocalDate.parse (DataRozpoczęcia); System.out.println ("Data:" + Data wykonania); Ciąg dateStartTime = "1906-12-31T12: 05"; LocalDateTimeTakenDateTime = LocalDateTime.parse (TimeInitialDate); System.out.println ("Data / Czas:" + dateTakTime); DateTimeFormatter df = DateTimeFormatter.ofPattern ("dd MMM uuuu"); System.out.println (DataPobrania + "W nowym formacie:" + df.format (DataPobrania)); }} 

W kodzie widzimy, jak tworzymy początkową datę w ciągu tekstowym, a następnie z obiektem typu Lokalna data używamy metody Analizować aby włączyć ciąg tekstowy do obiektu typu data, wypisujemy obiekt i widzimy, że jeśli data została poprawnie pobrana, powtarzamy tę samą procedurę, ale używając daty i godziny z Lokalna data i godzina.
Na koniec bierzemy nasz pierwszy utworzony obiekt i stosujemy do niego nowy format, potwierdzając w ten sposób, że byliśmy w stanie wprowadzić i manipulować datą ustaloną z ciągu tekstowego. Zobaczmy, jak to wygląda po uruchomieniu naszego programu:

Na tym kończymy ten samouczek, nauczyliśmy się pracować z datami w Jawa za pomocą ulepszeń w klasach, które zawiera nowa wersja, czyli Jawa 8Można to wykorzystać do wielu aplikacji na poziomie systemu, a nawet do interfejsów użytkownika.Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave