Java 各種時間上的操作範例
分享一些在專案中用到JAVA與日期相關的操作,包括:
- 取得目前的年、月、日
- 判斷兩個日期的大小
- 計算兩個日期的差距
- 取得昨天的日期
- 取得上個月的開始與結束日
package CDIT.stanley; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import java.util.Calendar; public class dateOperation { public static int differentDays(Date date1,Date date2){ Calendar cal1 = Calendar.getInstance(); cal1.setTime(date1); Calendar cal2 = Calendar.getInstance(); cal2.setTime(date2); int day1= cal1.get(Calendar.DAY_OF_YEAR); int day2 = cal2.get(Calendar.DAY_OF_YEAR); int year1 = cal1.get(Calendar.YEAR); int year2 = cal2.get(Calendar.YEAR); if(year1 != year2){ int timeDistance = 0 ; for(int i = year1 ; i < year2 ; i ++){ if(i%4==0 && i%100!=0 || i%400==0){ timeDistance += 366; } else{ timeDistance += 365; } } return timeDistance + (day2-day1) ; } else{ return day2-day1; } } public static Date getFirstMonthDay(Calendar calendar) { calendar.set(Calendar.DATE, calendar.getActualMinimum(Calendar.DATE)); return calendar.getTime(); } public static Date getLastMonthDay(Calendar calendar) { calendar.set(Calendar.DATE, calendar.getActualMaximum(Calendar.DATE)); return calendar.getTime(); } public static void main(String[] args) throws ParseException { //取得目前的年、月、日 Calendar calendar = Calendar.getInstance(); System.out.println("今天是" + calendar.get(Calendar.YEAR) + "年" + (calendar.get(Calendar.MONTH) + 1) + "月" + calendar.get(Calendar.DAY_OF_MONTH) + "日"); System.out.println("=================================================="); //輸出:今天是2017年8月24日 //判斷兩個日期的大小 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.TAIWAN); Date date1 = sdf.parse("2017-08-23"); Date date2 = sdf.parse("2016-09-22"); System.out.println("Date1 < Date2 : " + date1.before(date2)); System.out.println("Date1 > Date2 : " + date1.after(date2)); System.out.println("=================================================="); //輸出:Date1 < Date2 : false、Date1 > Date2 : true //計算兩個日期的差距 System.out.println("Date1 & Date2 差距 : " + differentDays(date1 , date2) + "天"); System.out.println("=================================================="); //輸出:Date1 & Date2 差距 : 31天 //取得昨天的日期 calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, -1); String yestedayDate = sdf.format(calendar.getTime()); System.out.println("昨天是" + yestedayDate); System.out.println("=================================================="); //輸出:昨天是2017-08-23 //取得上個月的開始與結束日 calendar = Calendar.getInstance(); calendar.add(Calendar.MONTH,-1); String monthDayFirst = sdf.format(getFirstMonthDay(calendar)); String monthDayLast = sdf.format(getLastMonthDay(calendar)); System.out.println("上個月的第一天是" + monthDayFirst); System.out.println("上個月的最後一天是" + monthDayLast); System.out.println("=================================================="); //輸出:上個月的第一天是2017-07-01、上個月的最後一天是2017-07-31 } }
mexican online pharmacies prescription drugs https://mexicaneasypharm.com/# Mexican Easy Pharm
buying prescription drugs in mexico online
Regardless, learning is the key, since one can get or lose for his/her examination of business region progressions of the purposes of premium.
mexican mail order pharmacies https://mexicaneasypharm.shop/# Mexican Easy Pharm
mexican pharmaceuticals online
Typically a critic’s review could make or break a new restaurant.
buying prescription drugs in mexico online: mexican pharmaceuticals online – п»їbest mexican online pharmacies
Do you recall the correct model?
As quickly as someone else begins to speak, the view will switch and that person will take the main focus.
mexican drugstore online https://mexicaneasypharm.com/# mexican drugstore online
mexico pharmacies prescription drugs
This ensures a wealthy agricultural commodity exchange.
online canadian pharmacy: CanadianMdPharm – legit canadian pharmacy online
вывод из запоя круглосуточно нижний новгород вывод из запоя круглосуточно нижний новгород .
выведение из запоя в нижнем новгороде выведение из запоя в нижнем новгороде .
Breish supported the establishment of a Presidency Council (PC) and Government of National Accord (GNA) in April 2016 and welcomed the PC and GNA, stating that “The LIA reaffirms its readiness to fully cooperate with the Government of National Accord in providing all relevant data, reports and support”.
вывод из запоя стационар вывод из запоя стационар .
Along with having one of the best on screen fights of the year with Johnson,Vin Diesel gives a fantastic,real return-to-form performance as Dominic.
this content https://web-counterparty.io
The first American Bible Institute was opened in Brazil in 1970, and WOL now has Institutes in fourteen nations.
best online pharmacies in mexico https://mexicaneasypharm.com/# mexican drugstore online
mexican mail order pharmacies
click for info https://web-counterparty.io
By using open-ended questions, interviewers encourage witnesses to provide as much information as possible without leading them or suggesting answers.
выведение из запоя в нижнем новгороде выведение из запоя в нижнем новгороде .
canadian pharmacies that deliver to the us: Canadian Md Pharm – reddit canadian pharmacy
вывод из запоя самара стационар вывод из запоя самара стационар .
Understanding the Aave Protocol
The Aave Protocol is revolutionizing the decentralized finance (DeFi) space with its unique approach to crypto lending and borrowing. Whether you’re a seasoned investor or new to the world of cryptocurrencies, Aave offers a robust platform for managing your digital assets.
[url=https://www-aave.com]aave lending[/url]
What is Aave?
Aave, which means ‘ghost’ in Finnish, is a non-custodial liquidity protocol. It allows users to earn interest on deposits and borrow assets. Aave is known for its wide range of supported cryptocurrencies and features that enhance the security and flexibility of crypto transactions.
Key Features of Aave Protocol
Flash Loans: Aave introduced the concept of flash loans, which are borrowed and repaid within a single transaction. This feature is useful for arbitrage opportunities and collateral swaps.
Security: Aave is audited by leading blockchain security firms, ensuring the safety of user funds.
Rate Switching: Users can switch between stable and variable interest rates, offering flexibility based on market conditions.
Wide Asset Support: Aave supports multiple cryptocurrencies including Ethereum (ETH), DAI, and more.
How to Get Started with Aave
Getting started with Aave is straightforward:
Set Up a Wallet: Use a compatible crypto wallet like MetaMask.
Connect to Aave: Visit the Aave website and connect your wallet.
Deposit Crypto: Choose from supported cryptocurrencies to deposit into the Aave Protocol.
Start Earning or Borrowing: Once your crypto is deposited, you can start earning interest or borrowing assets instantly.
Advantages of Using Aave
There are several reasons why Aave stands out in the world of DeFi:
Non-Custodial: Users maintain control over their funds.
Highly Secure: Regular audits and community governance enhance security.
Innovative Products: Pioneering features like flash loans provide unparalleled opportunities.
In conclusion, the Aave Protocol offers a revolutionary platform for anyone looking to explore the potential of decentralized finance. Whether you’re earning interest or borrowing assets, Aave provides a secure and flexible experience.
Покупка диплома о среднем полном образовании: как избежать мошенничества?
my link https://web-counterparty.io/
visit our website https://web-counterparty.io/
Early stage, late stage and private fairness investments.
вывод из запоя стационар вывод из запоя стационар .
вывод из запоя круглосуточно вывод из запоя круглосуточно .