今天在使用new Date() 与 System.currentTimeMillis() 的时候,突然发现个有趣的现象,心中有些猜想,录以后观。
情形一:new Date() 在 System.currentTimeMillis() 前调用、打印Date date = new Date(); System.out.printf("%tQ%n",date); System.out.println("==================="); System.out.println(System.currentTimeMillis());结果:
1637302049905
===================
1637302049921
情形二:new Date() 在 System.currentTimeMillis()后调用、打印System.out.println(System.currentTimeMillis()); System.out.println("==================="); System.out.printf("%tQ%n",date);结果:
1637302148222
===================
1637302148222
情形三:new Date() 在 System.currentTimeMillis()前、后分别调用、打印Date date = new Date(); System.out.printf("%tQ%n",date); System.out.println("==================="); System.out.println(System.currentTimeMillis()); System.out.println("========================"); System.out.println("========================"); System.out.println(System.currentTimeMillis()); System.out.println("==================="); System.out.printf("%tQ%n",date);结果:
1637302223521
===================
1637302223537
========================
========================
1637302223538
===================
1637302223521
或者:1637302280837
===================
1637302280853
========================
========================
1637302280853
===================
1637302280837
猜测:时间数据跟函数调用后,生成的对象有关。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)