原文:http://www.yiibai.com/java8/java8_localdateapi.html

使用Java8,新的日期时间API引入覆盖旧的日期时间API的以下缺点。

  • 非线程安全 - java.util.Date不是线程安全的,因此开发者必须在使用日期处理并发性问题。新的日期时间API是不可变的,并且没有setter方法。

  • 设计不佳 - 默认的开始日期从1900年,开始每月从1天从0开始,所以没有统一。不直接使用方法操作日期。新的API提供了这样操作实用方法。

  • 困难的时区处理 - 开发人员必须编写大量的代码来处理时区的问题。新的API设计开发保持特定领域设计。

Java8Tester.java

import java.time.LocalDate;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.time.Month;public class Java8Tester {public static void main(String args[]){Java8Tester java8tester = new Java8Tester();java8tester.testLocalDateTime(); }public void testLocalDateTime(){// Get the current date and timeLocalDateTime currentTime = LocalDateTime.now();     System.out.println("Current DateTime: " + currentTime);LocalDate date1 = currentTime.toLocalDate();System.out.println("date1: " + date1);Month month = currentTime.getMonth();int day = currentTime.getDayOfMonth();int seconds = currentTime.getSecond();System.out.println("Month: " + month+"day: " + day+"seconds: " + seconds);LocalDateTime date2 = currentTime.withDayOfMonth(10).withYear(2012);System.out.println("date2: " + date2);//12 december 2014LocalDate date3 = LocalDate.of(2014, Month.DECEMBER, 12); System.out.println("date3: " + date3);//22 hour 15 minutesLocalTime date4 = LocalTime.of(22, 15); System.out.println("date4: " + date4);//parse a stringLocalTime date5 = LocalTime.parse("20:15:30"); System.out.println("date5: " + date5);}
}

使用javac编译器编译如下类

C:\JAVA>javac Java8Tester.java

现在运行Java8Tester看到的结果

C:\JAVA>java Java8Tester

看到结果

Current DateTime: 2014-12-09T11:00:45.457
date1: 2014-12-09
Month: DECEMBERday: 9seconds: 45
date2: 2012-12-10T11:00:45.457
date3: 2014-12-12
date4: 22:15
date5: 20:15:30

Java8 本地DateTime API相关推荐

  1. Java8 时区DateTime API

    原文:http://www.yiibai.com/java8/java8_zoneddateapi.html 时区日期时间的API正在使用当时区要被考虑时. 让我们来看看他们的操作. 选择使用任何编辑 ...

  2. Java SE 8新功能介绍:使用新的DateTime API计算时间跨度

    使用Java SE 8新的DateTime API JSR 310-可以实现更清晰,可读且功能强大的编码. Java SE 8,JSR 310 在上一篇文章" 使用Streams API处理 ...

  3. java moment 日期转换_关于日期:如何使用Java 8 DateTime API转换修改后的儒略日数字...

    我有一个数据库,用于存储日期和日期时间(分别为INTEGER和DOUBLE)作为已修改的儒略日数(MJD).修改后的儒略日数是自1858年11月17日午夜UTC以来连续的天数.根据定义,它们始终以UT ...

  4. Java 8 Date-Time API 详解

    从Java版本1.0开始就支持日期和时间,主要通过java.util.Date类. 但是,Date类设计不佳. 例如,Date中的月份从1开始,但从日期却从0开始.在JDK 1.1中使用它的许多方法已 ...

  5. java8的日期API总结(JSR310)

    为什么80%的码农都做不了架构师?>>>    时间API回顾 Java的日期时间API,一直有一些令人头疼的问题. 有了 java.util.Date 又搞出个java.sql.D ...

  6. 微信小程序学习Course 8 本地缓存API

    微信小程序学习Course 8 本地缓存API 本篇随笔主要介绍微信小程序本地缓存API函数,微信小程序可以在本地缓存一些关键词数据,每一条关键词对应一段字符串.微信小程序提供了以下API函数. 8. ...

  7. HTML5权威指南--Web Storage,本地数据库,本地缓存API,Web Sockets API,Geolocation API(简要学习笔记二)...

    1.Web Storage HTML5除了Canvas元素之外,还有一个非常重要的功能那就是客户端本地保存数据的Web Storage功能. 以前都是用cookies保存用户名等简单信息. 但是coo ...

  8. 用C#和本地Windows API操纵系统菜单

    一.前言 .net框架是Windows应用领域中一个非常新的技术,可以肯定在未来的一段时间内,.NET应用必须与现存的Windows技术交互作用.这种交互作用主要体现在两个领域:COM和应用编程接口( ...

  9. node JS獲取GPS_Node.js 14 正式发布:V8 引擎升级,新增异步本地存储 API

    Node.js 14 版本于近日正式发布, 此版本包含的亮点如下: 对诊断功能的改进 升级 v8 引擎 新增实验性的异步本地存储 API 强化流 API 移除实验性模块中的警告 移除一部分早期版本中废 ...

最新文章

  1. 纠正一个错误,分布式系统关注点第17篇
  2. 幼儿园调查过程怎么写_幼儿园对孩子的重要性你真的清楚吗?
  3. hdu1002——A + B Problem II
  4. 空头平仓什么意思_什么是白糖期货期权仿真交易套利机会?
  5. linux下fish配置终端,如何在Linux中安装、配置和使用Fish Shell?
  6. acr122 java,ACR122开发包 SDK v1.1 [CDR 146]
  7. 升级Ubuntu18.04的linux kernel(修复小米游戏本的触摸板驱动问题)
  8. 王者荣耀服务器未响应 小米,10月23日小米手机更新王者荣耀失败 小米更新不了新赛季怎么办...
  9. java int格式转换文本_java 文件导出Excel 文本形式转数字格式解决,字段是int导出需求是数字解决方案...
  10. 费雪耶兹(Fisher–Yates) 也被称作高纳德( Knuth)随机置乱算法
  11. 操作系统 - - 生产者—消费者问题(PV操作)代码显示
  12. 三、硬盘分类与操作系统的启动流程
  13. electron-vue通过配置文件设置baseUrl
  14. 谷歌浏览器chrome安装vuejs devtools 插件
  15. 车联网未来发展会是怎么样的呢
  16. 奇偶页不同页眉页脚设置
  17. 智能5G网络发展概述
  18. Laradock 使用笔记
  19. 德国金融监管机构就区块链证券监管发布公告
  20. 更改SQL Server数据库名、数据库文件名、逻辑文件名的方法

热门文章

  1. 又有好奇心,又能自主学习,这个机器人棒棒哒!
  2. 《UVM实战》——3.1节UVM的树形结构
  3. [Vampier-magnetic material]3:cylinder core-shell material
  4. 结构型模式:Decorator 装饰模式
  5. Python高级知识点学习(一)
  6. 关闭tomcat报错Cannot allocate memory
  7. 转载:::::简单分享一个轻量级自动化测试框架目录结构设计
  8. Linux的cron和crontab
  9. java 8 新特性 时间api使用实例
  10. 使用php-amqplib连接rabbitMQ 学习笔记及总结