【460-463】日期类
2022-01-24 18:23:00 # JavaSE

Date类

1
2
3
4
5
6
7
8
9
10
11
12
import java.text.SimpleDateFormat;
import java.util.Date;

public class _460_java对日期的处理 {
public static void main(String[] args) {
// 系统当前时间
Date date = new Date();
System.out.println(date); // Mon Jan 24 18:26:45 CST 2022
}
}


SimpleDateFormat类

专门负责Data格式化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.text.SimpleDateFormat;
import java.util.Date;

public class _460_java对日期的处理 {
public static void main(String[] args) {
// 系统当前时间
Date date = new Date();
System.out.println(date); // Mon Jan 24 18:26:45 CST 2022

// SimpleDateFormat 专门负责日期格式化
/*
yyyy 年
MM 月
dd 日
HH 时
mm 分
ss 秒
SSS 毫秒
*/
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
System.out.println(sdf.format(date)); // 2022-01-24 18:32:21 448

}
}

String转化为Date

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.text.SimpleDateFormat;
import java.util.Date;

public class _461_java对日期的处理{
public static void main(String[] args) throws Exception{
// String -> Date
String time = "2008-08-08 08:08:08 888";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
Date parse = simpleDateFormat.parse(time);
System.out.println(parse); // Fri Aug 08 08:08:08 CST 2008

}
}

System.currentTimeMillis()

获取自1970-1-1 00:00:00:000 到现在时间经过毫秒

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.text.SimpleDateFormat;
import java.util.Date;

public class _461_java对日期的处理{
public static void main(String[] args) throws Exception{
// 获取自1970-1-1 00:00:00:000 到现在时间经过毫秒
long t = System.currentTimeMillis();
System.out.println(t);

// 记录一个方法执行时间
long l = System.currentTimeMillis();
print();
long r = System.currentTimeMillis();
System.out.println("print() 耗时" + (r-l) + "毫秒");
}

public static void print(){
for (int i = 0; i < 100; i++) {
System.out.println("i = " + i);
}
}
}

总结 System类 相关属性和方法

  1. System.out
    out是System类的静态变量。
  2. System.out.println()
    println()方法不是system类的,是PrintStream类的方法。
  3. System.gc()建议启动垃圾回收器
  4. System.currentTimeNillis()获取自1970年1月1日到系统当前时间的总毫秒数。
  5. System.exit(0)退出VNM。

通过毫秒构造Date对象

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.text.SimpleDateFormat;
import java.util.Date;

public class _463_通过毫秒构造Date对象 {
public static void main(String[] args) {
Date date = new Date(0); // 参数是毫秒
System.out.println(date); // Thu Jan 01 08:00:00 CST 1970

// 获取昨天此时的时间
Date date1 = new Date(System.currentTimeMillis() - 1000 * 24 * 60 * 60);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
System.out.println(simpleDateFormat.format(date1));
}
}


Prev
2022-01-24 18:23:00 # JavaSE
Next