当前位置:网站首页>Extension and application of timestamp
Extension and application of timestamp
2022-07-06 00:22:00 【Wang Xiaoya】
expand
Some application examples encountered in recent learning can be solved by timestamp , There are three ways to obtain timestamp , Recommended System Class to get the timestamp , Let's take a look at three ways :
1.System.currentTimeMillis()
System Class currentTimeMilis() The method is the most efficient of the three , The shortest running time . In the development, if the design comes to the problem of efficiency , It is recommended to use this method to obtain .
2.new Date().getTime()
except System class , The ones that use a lot should be Date The class , If the date is involved in the development, you will first think of Date, but date Getting a timestamp in a class is not the most efficient , Look at his source code :
The parameterless structure is as follows
public Date() {
this(System.currentTimeMillis());
You can see from the source code , new Date() It's actually called System.currentTimeMillis(), Then pass in your own parameter constructor . It's not hard to see. , If you just get the timestamp , Even anonymous new Date() Objects also have a slight performance cost , From the perspective of improving performance , Just get the timestamp , Regardless of the time zone ( Why does time zone have an impact? Let's see the next paragraph ), Call directly System.currentTimeMillis() It will be better .
3.Calendar.getInstance().getTimelnMillis()
This method is actually the slowest , Look at its source code and you will find ,Canlendar It's time zone sensitive , Because it takes a lot of time to deal with the time zone problem .
in summary , It is recommended to use System.currentTimeMillis() Get the timestamp .
Application example :
Find the number of days between two dates
for example : Write a method (fun3(“2010-09-20”,“2010-09-21”) ) The result is 1 God
package com.com.object_11.pratice_11.A4;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class CalendarDemo {
public static void main(String[] args) {
// Use time stamps
DateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
try {
Date star = dft.parse("2022-06-30");// Starting time
Date endDay=dft.parse("2025-11-30");// End time
Long starTime=star.getTime();
Long endTime=endDay.getTime();
Long num=endTime-starTime;// The number of milliseconds between timestamps
System.out.println(" The difference in days is :"+num/24/60/60/1000);// Divide by the number of milliseconds in a day
} catch (ParseException e) {
e.printStackTrace();
}
}
}

How many days were you born
Please use date time related API, Calculate how many days a person has been born .
package com.com.object_11.pratice_11.A5;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
// Please use date time related API, Calculate how many days a person has been born .
public class Birthday {
public static void main(String[] args) {
// Use time stamps
DateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
try {
Date star = dft.parse("1999-11-08");// Starting time
Date endDay=dft.parse("2022-06-30");// End time
Long starTime=star.getTime();
Long endTime=endDay.getTime();
Long num=endTime-starTime;// The number of milliseconds between timestamps
System.out.println(" The number of days since birth is :"+num/24/60/60/1000);// Divide by the number of milliseconds in a day
} catch (ParseException e) {
e.printStackTrace();
}
}
}

Print digit 1-9999 The time needed
verification for Cycle numbers 1-9999 The time needed ( millisecond )
package com.com.object_11.pratice_11.A6;
// verification for Cycle numbers 1-9999 The time needed ( millisecond )
public class PrintTimes {
public static void main(String[] args) {
// Starting time
long start = System.currentTimeMillis();
for (int i = 1; i < 10000; i++) {
System.out.println(i);
}
// End time
long end = System.currentTimeMillis();
// The start time minus the end time is the time required for printing
System.out.println(" Print 1-9999 need " + (end - start) + " millisecond ");
}
}

A few days away
So let's figure out today's distance 2023 year 1 month 1 How many days are there in the day
package com.com.object_11.pratice_11.A7;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class FutureTimes {
public static void main(String[] args) throws ParseException {
DateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
Date endDay=dft.parse("2023-01-01");// End time
// Use time stamps
Long starTime=System.currentTimeMillis();// Starting time ( At present )
Long endTime=endDay.getTime();
Long num=endTime-starTime;// The number of milliseconds between timestamps
System.out.println(" Today's distance 2023 year 1 month 1 Day also :"+num/24/60/60/1000+" God ");// Divide by the number of milliseconds in a day
}
}
// Today's distance 2023 year 1 month 1 Day also :184 God

边栏推荐
- Configuring OSPF GR features for Huawei devices
- JS can really prohibit constant modification this time!
- 什么叫做信息安全?包含哪些内容?与网络安全有什么区别?
- Yunna | what are the main operating processes of the fixed assets management system
- Solve the problem of reading Chinese garbled code in sqlserver connection database
- The difference of time zone and the time library of go language
- Hudi of data Lake (1): introduction to Hudi
- Power query data format conversion, Split Merge extraction, delete duplicates, delete errors, transpose and reverse, perspective and reverse perspective
- 权限问题:source .bash_profile permission denied
- Leetcode 450 deleting nodes in a binary search tree
猜你喜欢

Hardware and interface learning summary

Senparc. Weixin. Sample. MP source code analysis

Key structure of ffmpeg -- AVCodecContext
![[designmode] composite mode](/img/9a/25c7628595c6516ac34ba06121e8fa.png)
[designmode] composite mode

Yunna | what are the main operating processes of the fixed assets management system

Mysql - CRUD

Notepad + + regular expression replace String

STM32 configuration after chip replacement and possible errors

MySql——CRUD

MySql——CRUD
随机推荐
Doppler effect (Doppler shift)
After summarizing more than 800 kubectl aliases, I'm no longer afraid that I can't remember commands!
云呐|固定资产管理系统功能包括哪些?
Global and Chinese market of water heater expansion tank 2022-2028: Research Report on technology, participants, trends, market size and share
N1 # if you work on a metauniverse product [metauniverse · interdisciplinary] Season 2 S2
NSSA area where OSPF is configured for Huawei equipment
MySQL functions
Miaochai Weekly - 8
notepad++正则表达式替换字符串
硬件及接口学习总结
Transport layer protocol ----- UDP protocol
DEJA_VU3D - Cesium功能集 之 055-国内外各厂商地图服务地址汇总说明
Classical concurrency problem: the dining problem of philosophers
Extracting profile data from profile measurement
电机的简介
Global and Chinese markets of POM plastic gears 2022-2028: Research Report on technology, participants, trends, market size and share
Mathematical model Lotka Volterra
Shardingsphere source code analysis
Key structure of ffmpeg - avformatcontext
Start from the bottom structure and learn the introduction of fpga---fifo IP core and its key parameters