Huis Persoonlijke financiën Hoe datums in Java toe te voegen of af te trekken - dummies

Hoe datums in Java toe te voegen of af te trekken - dummies

Video: Android 101 by Fred Widjaja 2024

Video: Android 101 by Fred Widjaja 2024
Anonim

Net zoals u de ingebouwde vergelijkingsoperators van Java niet met datums kunt gebruiken, mag u ook geen ingebouwde wiskundige operators gebruiken. In plaats daarvan kunt u optellen en aftrekken op datums met behulp van de verschillende plus en minus methoden, en u kunt het verschil tussen twee datums bepalen met behulp van de methode tot .

Een belangrijk feit om te overwegen bij het uitvoeren van datum- en tijdberekeningen, is dat objecten met datumtijd onveranderlijk zijn. Dat betekent dat wanneer u een Date-Time-object maakt, u de waarde ervan niet kunt wijzigen. Wanneer u een berekening uitvoert op een Date-Time-object, is het resultaat een nieuw Date-Time-object met een nieuwe waarde.

Met de plus en minus methoden kunt u verschillende datum- en tijdeenheden toevoegen aan een datum-tijdobject. Er zijn vier varianten van elk voor de klasse LocalDate , waarmee u jaren, maanden, weken en dagen kunt toevoegen aan of aftrekken van een LocalDate -object. Met de volgende code worden de huidige datum, de datum van morgen en de datum van een week, een maand en een jaar vanaf nu afgedrukt:

Systeem. uit. println ("Vandaag:" + LocalDate. now ());

Systeem. uit. println ("Tomorrow:" + LocalDate. now (). plusDays (1));

Systeem. uit. println ("Volgende week:" + LocalDate. now (). plusWeeks (1));

Systeem. uit. println ("Volgende maand:" + LocalDate. now (). plusMonths (1));

Systeem. uit. println ("Volgend jaar:" + LocalDate. now (). plusYears (1));

Gebruik de methode tot om het verschil tussen twee datums te bepalen. Het berekent het verschil tussen een datum en de datum die is verstreken als de eerste parameter, gemeten in de eenheden die worden aangegeven door de tweede parameter. De volgende code bepaalt bijvoorbeeld het aantal dagen tussen 16 mei 2014 en 15 december 2014:

LocalDate date1 = LocalDate. ontleden (“2014/05/16”);

LocalDate date2 = LocalDate. ontleden (“2014/12/15”);

Systeem. uit. println (datum1. tot (datum2, ChronoUnit. DAYS));

Sommige datumberekeningen kunnen wat ingewikkelder zijn. Overweeg bijvoorbeeld een bedrijf dat facturen voorbereidt op de 15e van elke maand. In het volgende codefragment wordt het aantal dagen weergegeven vanaf de huidige datum tot de volgende factureringsdatum:

LocalDate today = LocalDate. nu();

LocalDate invDate = LocalDate. van (vandaag. getYear (),

vandaag. getMonthValue (), 15);

if (today. GetDayOfMonth ()> 15)

invDate = invDate. plusMonths (1);

lange dagenToInvoice = vandaag. tot (invDate,

ChronoUnit. DAYS);

Systeem. uit. println (daysToInvoice

+ "tot de volgende factuurdatum.“);

In dit voorbeeld wordt eerst de huidige datum opgehaald en vervolgens een nieuw LocalDate -object gemaakt dat de 15e van de huidige maand vertegenwoordigt. Als de huidige dag van de maand groter is dan 15, wordt er een maand aan de factureringsdatum toegevoegd. Met andere woorden, als het de 16e of later is, vindt de facturering plaats op de 15e van de volgende maand en niet van deze maand. Vervolgens wordt de methode tot gebruikt om het aantal dagen te bepalen tussen de huidige datum en de volgende factuurdatum.

ChronoUnit is een opsomming die de verschillende tijdseenheden definieert die kunnen worden gebruikt in datum- en tijdberekeningen. De mogelijke waarden zijn:

CENTURIES

DAGEN

DECADES

ERAS

FOREVER

HALFDAGEN

UREN

MICROS

MILLENNIA

MILLIS

MINUTEN

MAANDEN

NANOS

SECONDEN

WEKEN

JAREN

De meeste hiervan spreken voor zich, maar twee daarvan zijn een beetje vreemd:

  • ERA geeft aan of de datum verwijst naar de Common Era (CE, ook bekend als AD) of Before Era (BCE, ook bekend als BC).
  • FOREVER vertegenwoordigt de grootste waarde die kan worden weergegeven als een duur. Jammer genoeg laat Java je niet voor altijd leven. De volgende code genereert een uitzondering:

LocalDate birthday = LocalDate. ontleden (“1959/05/16);

verjaardag = verjaardag. plus (1, ChronoUnit. FOREVER);

Merk op dat ChronoUni t in de java is. tijd. tijdelijk -pakket, dus zorg ervoor dat u de volgende verklaring bovenaan een programma opneemt dat ChronoUnit :

java importeert. tijd. tijdelijk. *;

Hoe datums in Java toe te voegen of af te trekken - dummies

Bewerkers keuze

Hoe u Flash-video maakt en codeert - dummies

Hoe u Flash-video maakt en codeert - dummies

Als de pagina's die u maakt, zijn gewonnen ' t kan worden bekeken op mobiele apparaten (zoals een iPad of een smartphone), kunt u webpagina's maken met prachtige Flash-video. Adobe Flash Professional CS6 heeft een eigen ingebouwde video-encoder. Full-motionvideo in Flash is iets heel moois. U past de video aan voor het bekijken door de doelgroep ...

Hoe een aanpasbare interface te maken in CSS3 - dummies

Hoe een aanpasbare interface te maken in CSS3 - dummies

De grote variëteit en soorten schermen gebruikt om informatie weer te geven, maakt het nodig dat uw CSS3-commando's de gebruiker toestaan ​​om het formaat van de elementen naar wens aan te passen. In de meeste gevallen kunt u de gebruiker eenvoudig toestaan ​​om het element op elke gewenste grootte te maken. Er kunnen zich echter situaties voordoen waarin u de grootte van de grootte moet controleren ...

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Hoe u een eenvoudige tabel op uw webpagina maakt - dummies

Tabellen laten u organiseer informatie op uw webpagina en geef het een georganiseerde uitstraling die uw bezoekers nuttig zullen vinden. Bij gebruik zoals bedoeld, hebben tabellen rijen en kolommen. Voor elke spot waar een rij en kolom elkaar kruisen, hebt u een tabelcel. Elke cel kan zijn eigen opmaak hebben: de gegevens erin ...

Bewerkers keuze

Hoe Postproduction Shareninging Filters werken - dummies

Hoe Postproduction Shareninging Filters werken - dummies

Verscherpingsfilters werken in postproductie door de randen (of aangrenzende gebieden met tonaal contrast) te benadrukken aan elkaar) in een afbeelding. Ze creëren een fijne highlight aan de donkere kant van de rand en een piepklein lowlight aan de lichtere kant van de rand. Dit toegevoegde contrast zorgt ervoor dat de randen er scherper uitzien vanaf een ...

HDR Work-Flow voor foto's met één belichting - dummies

HDR Work-Flow voor foto's met één belichting - dummies

In grote lijnen, enkele belichting hoog dynamisch bereik volgt dezelfde workflow als HDR-fotografie tussen haakjes. Er kunnen kleine verschillen zijn, dus hier is een overzicht van de werkstroom: configureer uw camera voor single-shot HDR. Het enige dat u zoekt, is de beste foto die u kunt maken. Besteed aandacht aan de lichtomstandigheden, het onderwerp, beweging en ...

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Geavanceerde compacte en superzoomcamera's voor HDR-fotografie - dummies

Stap omhoog van compacte digitale camera's binnen het budgetbereik, vindt u duurdere compacte digitale camera's voor HDR-fotografie, ook wel high-end compacts, superzoomlenzen en dSLR-look-alikes genoemd. Er zijn zoveel vaak overlappende categorieën dat het je hoofd laat draaien. De twee dingen die deze reeks camera's gemeen hebben, zijn hun ...

Bewerkers keuze

In te schakelen Class Tracking in QuickBooks 2013 - dummies

In te schakelen Class Tracking in QuickBooks 2013 - dummies

Om activity-based costing te gebruiken (ABC ) in QuickBooks 2013 moet u de QuickBooks Class Tracking-functie inschakelen. Met Class Tracking kunt u inkomsten- en onkostentransacties categoriseren als niet alleen vallen in inkomsten- en uitgavenrekeningen, maar ook als vallen in bepaalde klassen. Volg deze stappen om Class Tracking in QuickBooks in te schakelen: Kies Bewerken → Voorkeuren ...

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Gebruikt om een ​​exemplaar van een QuickBooks-gegevensbestand te gebruiken - dummies

Ongeacht of de client verzendt handmatig een accountantskopie van een QuickBooks-gegevensbestand, e-mails een accountantsexemplaar, of verzendt een accountantskopie via de Intuit-bestandsoverdrachtservice, u gebruikt de kopie van de accountant door Bestand → Verzend bedrijfsdossier → Accountantskopie → Open & converteer overzetten te kiezen Bestand commando. Wanneer u deze opdracht kiest, geeft QuickBooks een ...

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Hoe Audit Trails te gebruiken in QuickBooks - dummies

Als u besluit om meerdere gebruikers toegang te geven tot de QuickBooks-gegevens bestand, zult u de QuickBooks Audit Trail-functie waarderen, die bijhoudt wie welke wijzigingen aan het QuickBooks-gegevensbestand aanbrengt. U kunt transacties niet verwijderen uit de lijst of geschiedenis van de audittrail, behalve door gegevens te archiveren en te condenseren. Audit trail inschakelen ...