当前位置: 首页 > news >正文

家具网站建设策划seo排名优化软件有

家具网站建设策划,seo排名优化软件有,建站网站如何清理缓存,回收那个网站做推广好文章目录前言一、LocalDateTime1.1 获取当前时间LocalDate.now()1.2 获取当前时间的年、月、日、时分秒localDateTime.getYear()……1.3 给LocalDateTime赋值LocalDateTime.of()1.4 时间与字符串相互转换LocalDateTime.parse()1.5 时间运算——加上对应时间LocalDateTime.now()…

文章目录

  • 前言
  • 一、LocalDateTime
    • 1.1 获取当前时间LocalDate.now()
    • 1.2 获取当前时间的年、月、日、时分秒localDateTime.getYear()……
    • 1.3 给LocalDateTime赋值LocalDateTime.of()
    • 1.4 时间与字符串相互转换LocalDateTime.parse()
    • 1.5 时间运算——加上对应时间LocalDateTime.now().plusYears(2)
    • 1.6 时间运算——减去对应时间LocalDateTime.now().minusYears(2)
    • 1.7 两个时间比较LocalDateTime.now().compareTo()
    • 1.8 利用Duration计算时间差Duration.between(of,now).toMillis()
    • 1.9 改变当前时间的年、月、日、时、分、秒LocalDateTime.now().withYear(2060)
    • 1.10 自定义输出的格式DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
    • 1.11 LocalDateTime的with()方法
    • 1.12 两个日期前后的比较与判断LocalDateTime.now().isBefore()
  • 二、Util获取当前时间
    • 2.1 Date
    • 2.1.1 Date获取当前时间
    • 2.1.1 Date存在的缺陷
    • 2.2 Calendar
  • 三、System.currentTimeMillis()
  • 总结


前言


在开发时我们经常需要获取当前时间或者对时间进项处理(在某个时间的基础上增加或者减少),java获取时间的方法比较多,有LocalDateTime、Date、Calendar等,其中LocalDateTime是java8的新特性,相比较其它两个而言,LocalDateTime有很多优势,这也是最推荐使用的方法。
下面我们先来介绍一个LocalDateTime的用法,然后介绍Date、Calendar的用法,最后比较它们的区别。

一、LocalDateTime

JDK1.8版本中新引入的API,加强了对时间的管理,有很多特别好用的时间运算方法,而且是线程安全的。

1.1 获取当前时间LocalDate.now()

    @Testvoid test() {LocalDate localDate = LocalDate.now();LocalTime localTime = LocalTime.now();LocalDateTime localDateTime = LocalDateTime.now();System.out.println("localDate:"+localDate);//2023-02-22System.out.println("localTime:"+localTime);//17:25:36.590System.out.println("localDateTime:"+localDateTime);//2023-02-22T17:25:36.590}

输出结果:
在这里插入图片描述
可以看到不用做格式转换就可以得到可读性很高的日期格式。
注意:ISO 8601规定的日期和时间分隔符是T。标准格式如下:

日期:yyyy-MM-dd
时间:HH:mm:ss
带毫秒的时间:HH:mm:ss.SSS
日期和时间:yyyy-MM-dd'T'HH:mm:ss
带毫秒的日期和时间:yyyy-MM-dd'T'HH:mm:ss.SSS

1.2 获取当前时间的年、月、日、时分秒localDateTime.getYear()……

    @Testvoid test() {LocalDateTime localDateTime = LocalDateTime.now(); // 获取当前时间int year = localDateTime.getYear(); // 获取年份 2023int month = localDateTime.getMonthValue(); // 获取月份 2int day = localDateTime.getDayOfMonth(); // 获取月中的天数 22int hour = localDateTime.getHour(); // 获取当前的小时 17int minute = localDateTime.getMinute(); // 获取当前分钟 33int second = localDateTime.getSecond(); // 获取当前秒数 22System.out.println(year);System.out.println(month);System.out.println(day);System.out.println(hour);System.out.println(minute);System.out.println(second);}

输出结果:
在这里插入图片描述

1.3 给LocalDateTime赋值LocalDateTime.of()

    void test() {LocalDateTime of = LocalDateTime.of(2023,2,22,22,22,22);System.out.println(of); // 输出2023-02-22T22:22:22}

输出结果:
在这里插入图片描述

1.4 时间与字符串相互转换LocalDateTime.parse()

    @Testvoid test() {// 将字符串转换为指定格式的时间(格式要和给定的格式一致,不然会报错)LocalDateTime parse = LocalDateTime.parse("2023-02-22 22:22:22", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));LocalDateTime parse1 = LocalDateTime.parse("2023 02 22 22:22:22", DateTimeFormatter.ofPattern("yyyy MM dd HH:mm:ss"));LocalDateTime parse2 = LocalDateTime.parse("2023.02.22 22:22:22", DateTimeFormatter.ofPattern("yyyy.MM.dd HH:mm:ss"));System.out.println(parse); // 输出2023-02-22T22:22:22System.out.println(parse1); // 输出2023-02-22T22:22:22System.out.println(parse2); // 输出2023-02-22T22:22:22// 时间转字符串LocalDateTime now = LocalDateTime.now();DateTimeFormatter of = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");String dateTime = now.format(of);System.out.println(dateTime); // 输出 2023-02-22 17:56:18}

输出结果:
在这里插入图片描述

1.5 时间运算——加上对应时间LocalDateTime.now().plusYears(2)

LocalDateTime提供了对日期和时间进行加减的非常简单的链式调用,让时间运算变得非常简单:

    @Testvoid test() {LocalDateTime now = LocalDateTime.now(); // 当前时间2023-02-22T18:00:19.352LocalDateTime plusYears= now.plusYears(2); // 在当前时间加上2年2025-02-22T18:00:19.352LocalDateTime plusMonths= now.plusMonths(2);// 在当前时间商加上2月2023-04-22T18:00:19.352LocalDateTime plusDays= now.plusDays(2); // 在当前时间加上2天2023-02-24T18:00:19.352LocalDateTime plusHours= now.plusHours(2); // 在当前时间加上2个小时2023-02-22T20:00:19.352LocalDateTime plusMinutes= now.plusMinutes(30); // 在当前时间加上30分钟2023-02-22T18:30:19.352LocalDateTime plusSeconds = now.plusSeconds(30); // 在当前时间加上30秒2023-02-22T18:00:49.352System.out.println(now);System.out.println(plusYears);System.out.println(plusMonths);System.out.println(plusDays);System.out.println(plusHours);System.out.println(plusMinutes);System.out.println(plusSeconds);}

输出结果:
在这里插入图片描述

1.6 时间运算——减去对应时间LocalDateTime.now().minusYears(2)

    @Testvoid test() {LocalDateTime now = LocalDateTime.now(); // 当前时间LocalDateTime minusYears = now.minusYears(2); // 在当前时间减上2年LocalDateTime minusMonths = now.minusMonths(2);// 在当前时间商减上2月LocalDateTime minusDays = now.minusDays(2); // 在当前时间减上2天LocalDateTime minusHours = now.minusHours(2); // 在当前时间减上2个小时LocalDateTime minusMinutes = now.minusMinutes(30); // 在当前时间减上30分钟LocalDateTime minusSeconds = now.minusSeconds(30); // 在当前时间减上30秒System.out.println("now:" + now);System.out.println("minusYears:" + minusYears);System.out.println("minusMonths:" + minusMonths);System.out.println("minusDays:" + minusDays);System.out.println("minusHours:" + minusHours);System.out.println("minusMinutes:" + minusMinutes);System.out.println("minusSeconds:" + minusSeconds);}

输出结果:
在这里插入图片描述

1.7 两个时间比较LocalDateTime.now().compareTo()

    @Testvoid test() {LocalDateTime now = LocalDateTime.now(); // 当前时间LocalDateTime now1 = now.plusYears(5); // 在当前时间加上5年//  给LocalDateTime 赋值LocalDateTime of = LocalDateTime.of(2023,2,2,22,22,22);LocalDateTime of1 = LocalDateTime.of(2023,8,5,1,1,1);//两个时间作比较,第一个时间减去第二个时间(如果年份相同,比较月份,月份相同比较天数,以此类推)int compareTo = now1.compareTo(now);int compareTo1 = now.compareTo(now1);int compareTo2 = now.compareTo(of);int compareTo3 = now.compareTo(of1);System.out.println(now);   // 输出 2023-02-22T20:19:44.112vSystem.out.println(now1); // 输出 2028-02-22T20:19:44.112System.out.println(of); // 输出 2023-02-02T22:22:22System.out.println(of1); // 输出 2023-08-05T01:01:01System.out.println(compareTo); // 输出 5System.out.println(compareTo1); // 输出 -5System.out.println(compareTo2); // 输出 20System.out.println(compareTo3); // 输出 -6}

输出结果:

1.8 利用Duration计算时间差Duration.between(of,now).toMillis()

注意没有计算相差的年和秒值,对于要计算相差的秒数,可以利用计算毫秒来进行转换。

    @Testvoid test() {LocalDateTime now = LocalDateTime.now(); // 当前时间//  给LocalDateTime 赋值LocalDateTime of = LocalDateTime.of(2022,2,22,2,2,2);Duration duration = Duration.between(of,now); // 后面减去前面long toDays = Duration.between(of,now).toDays(); //相差的天数long toHours = Duration.between(of,now).toHours();//相差的小时数long toMinutes = Duration.between(of,now).toMinutes();//相差的分钟数long toMillis = Duration.between(of,now).toMillis();//相差毫秒数long toNanos = Duration.between(of,now).toNanos();//相差的纳秒数System.out.println("toDays:"+ toDays); // 输出 toDays:365System.out.println("toHours:"+ toHours); // 输出 toHours:8778System.out.println("toMinutes:"+ toMinutes); // 输出 toMinutes:526732System.out.println("toMillis:"+ toMillis); // 输出 toMillis:31603973840System.out.println("toNanos:"+ toNanos); // 输出 toNanos:31603973840000000}

输出结果:
在这里插入图片描述

1.9 改变当前时间的年、月、日、时、分、秒LocalDateTime.now().withYear(2060)

    @Testvoid test() {LocalDateTime now = LocalDateTime.now(); // 当前时间LocalDateTime withYear = now.withYear(2060); // 改变当前年份(变成2060年)LocalDateTime withMonth = now.withMonth(12); // 改变当前月份(变成12月份)LocalDateTime withDayOfMonth = now.withDayOfMonth(28); //改变当前天数(变成28日)LocalDateTime withHour = now.withHour(23); // 改变当前小时数(变成23时)LocalDateTime withMinute = now.withMinute(30); // 改变当前分钟(变成30分钟)LocalDateTime withSecond = now.withSecond(23); // 改变当前小时数(变成23时)LocalDateTime withDayOfYear = now.withDayOfYear(60); // 从一月一号开始加上60天System.out.println(now);System.out.println("withYear:"+ withYear);System.out.println("withMonth:"+ withMonth);System.out.println("withDayOfMonth:"+ withDayOfMonth);System.out.println("withHour:"+ withHour);System.out.println("withMinute:"+ withMinute);System.out.println("withSecond:"+ withSecond);System.out.println("withDayOfYear:"+ withDayOfYear);}

输出结果:
在这里插入图片描述

1.10 自定义输出的格式DateTimeFormatter.ofPattern(“yyyy/MM/dd HH:mm:ss”);

    @Testvoid test() {// 自定义格式化:DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");DateTimeFormatter dtf1 = DateTimeFormatter.ofPattern("yyyy.MM.dd HH:mm:ss");System.out.println("自定义格式yyyy/MM/dd HH:mm:ss :"+dtf.format(LocalDateTime.now()));System.out.println("自定义格式yyyy.MM.dd HH:mm:ss :"+dtf1.format(LocalDateTime.now()));// 用自定义格式解析:LocalDateTime dt2 = LocalDateTime.parse("2020/10/20 15:16:17", dtf);System.out.println("格式解析:"+dt2);}

输出结果:
在这里插入图片描述

1.11 LocalDateTime的with()方法

// 本月第一天0:00时刻:
LocalDateTime firstDay = LocalDate.now().withDayOfMonth(1).atStartOfDay();
// 本月最后1天:
LocalDate lastDay = LocalDate.now().with(TemporalAdjusters.lastDayOfMonth());
// 下月第1天:
LocalDate nextMonthFirstDay = LocalDate.now().with(TemporalAdjusters.firstDayOfNextMonth());
// 本月第1个周一:
LocalDate firstWeekday = LocalDate.now().with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY));

输出结果:

1.12 两个日期前后的比较与判断LocalDateTime.now().isBefore()

    @Testvoid test() {//判断两个时间点的前后LocalDateTime now = LocalDateTime.now();LocalDateTime target = LocalDateTime.of(2022, 2, 22, 22, 22, 22);boolean isBefore = now.isBefore(target);System.out.println("now:"+now);System.out.println("target:"+target);System.out.println("isBefore:"+isBefore);System.out.println(LocalDate.now().isBefore(LocalDate.of(2022, 2, 22)));System.out.println(LocalTime.now().isAfter(LocalTime.parse("08:15:00")));}}

输出结果:
在这里插入图片描述

二、Util获取当前时间

2.1 Date

2.1.1 Date获取当前时间

    @Testvoid test() {Date date = new Date(); // 返回当前时间戳格式SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 改变格式System.out.println(dateFormat.format(date)); // 获取当前时间  2023-02-22 21:24:53}

2.1.1 Date存在的缺陷

如果不格式化,打印出的日期可读性差:

    @Testvoid test() {Date date = new Date(); // 返回当前时间戳格式System.out.println(date); // 获取当前时间  Wed Feb 22 21:34:18 CST 2023}

通常会使用SimpleDateFormate来实现格式化,但是sdf最大的问题是线程不安全的。

2.2 Calendar

    @Testvoid test() {Calendar cal= Calendar.getInstance(); // 返回当前时间戳格式SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 改变格式System.out.println(dateFormat.format(cal.getTime())); // 获取当前时间int y=cal.get(Calendar.YEAR); // 获取当前年份int m=cal.get(Calendar.MONTH); // 获取当前月份int d=cal.get(Calendar.DATE); // 获取当前日期int h=cal.get(Calendar.HOUR_OF_DAY); // 获取当前小时int mi=cal.get(Calendar.MINUTE); // 获取当前分钟int s=cal.get(Calendar.SECOND); // 获取当前秒数System.out.println("现在时刻是"+y+"年"+m+"月"+d+"日"+h+"时"+mi+"分"+s+"秒");}

三、System.currentTimeMillis()

SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd 'at' HH:mm:ss z"); // 改变格式
Date date = new Date(System.currentTimeMillis()); // 返回当前时间戳格式
System.out.println(formatter.format(date)); // 获取当前时间

总结

LocalDateTime获取时间以及计算都非常方便,而且是线程安全的,简易使用LocalDateTime。


文章转载自:
http://warship.zpfr.cn
http://tibia.zpfr.cn
http://bureaucratist.zpfr.cn
http://nonentity.zpfr.cn
http://idiolect.zpfr.cn
http://prodigious.zpfr.cn
http://borosilicate.zpfr.cn
http://spherulite.zpfr.cn
http://kidderminster.zpfr.cn
http://montpelier.zpfr.cn
http://phlebogram.zpfr.cn
http://ftc.zpfr.cn
http://orionid.zpfr.cn
http://probabilize.zpfr.cn
http://noplaceville.zpfr.cn
http://glomera.zpfr.cn
http://zengakuren.zpfr.cn
http://cantaloupe.zpfr.cn
http://bronchopneumonia.zpfr.cn
http://pastiche.zpfr.cn
http://reenforcement.zpfr.cn
http://pettifoggery.zpfr.cn
http://sump.zpfr.cn
http://arnica.zpfr.cn
http://anemic.zpfr.cn
http://supermalloy.zpfr.cn
http://throve.zpfr.cn
http://pansexual.zpfr.cn
http://inconscient.zpfr.cn
http://enamored.zpfr.cn
http://nasdaq.zpfr.cn
http://kathy.zpfr.cn
http://hispanist.zpfr.cn
http://cosmogony.zpfr.cn
http://acidize.zpfr.cn
http://sensory.zpfr.cn
http://mossback.zpfr.cn
http://ethal.zpfr.cn
http://babylonian.zpfr.cn
http://vanquish.zpfr.cn
http://calciphobic.zpfr.cn
http://athermancy.zpfr.cn
http://oast.zpfr.cn
http://incinerator.zpfr.cn
http://komiteh.zpfr.cn
http://tzarist.zpfr.cn
http://stem.zpfr.cn
http://umpteen.zpfr.cn
http://advertizing.zpfr.cn
http://rockiness.zpfr.cn
http://stench.zpfr.cn
http://skikda.zpfr.cn
http://clianthus.zpfr.cn
http://quadrumvir.zpfr.cn
http://bumblepuppy.zpfr.cn
http://coating.zpfr.cn
http://camphorate.zpfr.cn
http://slanderously.zpfr.cn
http://inaccessibly.zpfr.cn
http://funicle.zpfr.cn
http://ultracentrifugal.zpfr.cn
http://kinsey.zpfr.cn
http://mecklenburg.zpfr.cn
http://listenable.zpfr.cn
http://cargojet.zpfr.cn
http://chevet.zpfr.cn
http://hydrophone.zpfr.cn
http://remotion.zpfr.cn
http://attractile.zpfr.cn
http://jute.zpfr.cn
http://germanophobia.zpfr.cn
http://interzonal.zpfr.cn
http://quinquefoliolate.zpfr.cn
http://trail.zpfr.cn
http://this.zpfr.cn
http://sensualism.zpfr.cn
http://frequency.zpfr.cn
http://moneyman.zpfr.cn
http://negrohead.zpfr.cn
http://algerian.zpfr.cn
http://woodrow.zpfr.cn
http://production.zpfr.cn
http://fee.zpfr.cn
http://spumoni.zpfr.cn
http://veronal.zpfr.cn
http://participial.zpfr.cn
http://gastriloquist.zpfr.cn
http://visionary.zpfr.cn
http://chronometer.zpfr.cn
http://hematoma.zpfr.cn
http://sulkiness.zpfr.cn
http://wes.zpfr.cn
http://ecospecific.zpfr.cn
http://altai.zpfr.cn
http://thunderous.zpfr.cn
http://interknot.zpfr.cn
http://iyar.zpfr.cn
http://cac.zpfr.cn
http://travesty.zpfr.cn
http://previously.zpfr.cn
http://www.dt0577.cn/news/68270.html

相关文章:

  • wordpress初音主题南京百度快速排名优化
  • wordpress 安装 数据库市场推广seo职位描述
  • 有经验的赣州网站建设百度推广代运营公司
  • 网站建设策划方案google seo教程
  • 没有做等保的网站不能上线对吗网店代运营诈骗
  • 网络营销整合营销seo服务外包客服
  • 网站做超链接薪资多少一个月高级seo
  • 台州网站建设公司.今日热点新闻素材
  • 免费一键建站官网大全网站seo策划方案实例
  • app那个网站开发比较好好的搜索引擎推荐
  • 网站建设 视频百度推广客户端app
  • wordpress 移动端编辑器网络优化工程师是做什么的
  • 做城通网盘资源网站的源码站长素材网
  • 网站做动态图片今日重大新闻头条
  • 杰奇网站地图怎么做收录批量查询工具
  • qq网页版直接登录手机版网站关键词排名优化
  • 注册100万公司需要多少钱南昌seo全网营销
  • wordpress移动应用优化设计六年级下册语文答案
  • asp网站后台管理系统密码破解seo优化培训课程
  • wordpress seo by yoast插件下载深圳优化公司高粱seo较
  • 可以免费做演播的听书网站武汉搜索排名提升
  • 美丽深圳微信公众号二维码河南网站建设优化技术
  • 域名注册 网站建设 好做吗短视频营销成功的案例
  • 网站制作替我们购买域名企业营销策划方案范文
  • 黑龙江省城乡和建设厅网站首页直通车关键词优化
  • 无锡网站建设唯唯网络百度地图官网2022最新版下载
  • 优化门户网站建设全网自媒体平台大全
  • wordpress 置顶调用网站怎么优化推广
  • 山西太原门户网站开发公司今日热点新闻15条
  • 沂水网站制作推广赚钱的软件排行