Java中的时区和带时区的时间对象:ZoneId类、ZonedDateTime类

在 Java 中,ZoneId 和 ZonedDateTime 是处理时区和带时区日期时间的重要类,它们属于 java.time 包,这个包是在 Java 8 中引入的,用于替代旧的日期和时间 API(java.util.Date、java.util.Calendar 等)。

1、ZoneId 时区

ZoneId 类表示时区信息,例如 "UTC"、"Asia/Shanghai"、"America/New_York" 等。它提供了获取时区偏移量、时区规则以及验证时区 ID 的方法。

ZoneId 时区的常用方法:

方法说明
public static ZoneId systemDefault()获取当前系统默认的时区。
public static Set<String> getAvailableZoneIds()获取Java中支持的所有时区。
public static ZoneId of(String zoneId)获取一个指定的时区。
public abstract ZoneRules getRules()获取该时区的时区规则。

【示例】使用 ZoneId 时区。

import java.time.ZoneId;

/**
 * 使用 ZoneId 时区
 */
@Test
public void testZoneId()
{
    // 1、获取当前系统默认的时区
    ZoneId zoneId = ZoneId.systemDefault();
    System.out.println("当前系统的默认时区:" + zoneId.getId());

    // 2、获取Java支持的全部时区ID
    Set<String> zoneIdSet = ZoneId.getAvailableZoneIds();
    System.out.println("Java支持的全部时区:" + zoneIdSet);

    // 3、获取美国纽约市的时区ID
    ZoneId zoneNewYork = ZoneId.of("America/New_York");
    System.out.println("美国纽约市的时区:" + zoneNewYork.getId());
}

执行结果:

2、ZonedDateTime 带时区的时间

ZonedDateTime 类表示带时区信息的日期和时间。它包含了日期、时间和时区信息,可以用于表示某个具体时区下的时间点。

ZonedDateTime 的常用方法:

方法说明
public static ZonedDateTime now()获取当前系统带时区的时间。
public static ZonedDateTime now(ZoneId zone)获取指定的时区的时间。
public ZonedDateTime withZoneSameInstant(ZoneId zone)更改时区,保持瞬间(时间点)不变。
public static ZonedDateTime of(LocalDateTime localDateTime, ZoneId zone)根据 LocalDateTime 和 ZoneId 创建 ZonedDateTime 实例。
public ZoneId getZone()获取时区信息。

【示例】使用 ZonedDateTime 带时区的时间。

/**
 * 使用 ZonedDateTime 带时区的时间
 */
@Test
public void testZonedDateTime()
{
    // 1、获取当前系统带时区的时间
    ZonedDateTime zonedDateTime = ZonedDateTime.now();
    System.out.println("当前系统带时区的时间:" + zonedDateTime);

    // 2、获取美国纽约市时间对象
    ZoneId zoneNewYork = ZoneId.of("America/New_York"); //设置时区ID
    ZonedDateTime zonedDateTimeNewYork = ZonedDateTime.now(zoneNewYork);
    System.out.println("美国纽约市当前时间:" + zonedDateTimeNewYork);

    // 3、获取世界标准时间
    ZonedDateTime zebraTime = ZonedDateTime.now(Clock.systemUTC());
    System.out.println("世界标准时间:" + zebraTime);
}

执行结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/908307.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

微积分复习笔记 Calculus Volume 1 - 4.5 Derivatives and the Shape of a Graph

4.5 Derivatives and the Shape of a Graph - Calculus Volume 1 | OpenStax

Windows配置Nodejs及nmp简明教程(2024可用)

一、下载及安装Nodejs 下载 Node.js 中文网 (nodejs.com.cn)在此下载windows长期维护版本的.msi安装包&#xff0c;64位 安装&#xff1a; 双节安装包一直点击Next下一步&#xff0c;注意安装路径选择C盘默认路径&#xff08;C:\Program Files\nodejs\&#xff09;即可&#x…

MATLAB实现蝙蝠算法(BA)

MATLAB实现蝙蝠算法(BA) 1.算法介绍 蝙蝠算法&#xff08;简称BA&#xff09;是一种受微型蝙蝠回声定位机制启发的群体智能算法&#xff0c;由Xin-She Yang于2010年提出。这种算法模拟了微型蝙蝠通过向周围环境发出声音并监听回声来识别猎物、避开障碍物以及追踪巢穴的行为。…

JavaStream流

认识 在java.util.stream util包下的新增API&#xff0c;可以用于操作集合或者数组的数据。 功能强大&#xff08;提供了很多结合Lambda的API)&#xff0c;性能高效&#xff08;有很多优化&#xff09;&#xff0c;代码简洁&#xff08;Lambda&#xff09;&#xff0c;可读性好…

【LwIP源码学习4】主线程tcpip_thread

前言 本文对lwip的主要线程tcpip_thread进行分析。 正文 tcpip_thread是lwip最主要的线程&#xff0c;其创建在tcpip_init函数中 sys_thread_new(TCPIP_THREAD_NAME, tcpip_thread, NULL, TCPIP_THREAD_STACKSIZE, TCPIP_THREAD_PRIO);tcpip_init函数被TCPIP_Init函数调用。…

HarmonyOS鸿蒙开发入门,常用ArkUI组件学习(二)

书接上回&#xff0c;让我们继续来学习ArkUI的其他组件 目录&#xff0c;可以点击跳转到想要了解的组件详细内容 组件四&#xff1a;Button组件五&#xff1a;Slider组件六&#xff1a; Column & Row组件七&#xff1a;循环控制组件八&#xff1a; List 组件四&#xff1a;…

四、k8s快速入门之Kubernetes资源清单

kubernetes中的资源 ⭐️ k8s中所有的内容都抽象为资源&#xff0c;资源实列化之后&#xff0c;叫做对象 1️⃣名称空间级别 ⭐️ kubeadm在执行k8s的pod的时候会在kube-system这个名称空间下执行&#xff0c;所以说当你kubectl get pod 的时候是查看不到的查看的是默认的po…

【收藏版】产品经理工作全流程拆解:每一步都是成功的基石

在信息爆炸的今天&#xff0c;产品经理的角色愈加重要。市场分析、用户需求调研、竞品分析、市场定位、产品设计、开发测试……每一个环节都可能决定产品的成败。这篇文章将带你逐步解读从产品立项到上线运营的全流程&#xff0c;为你揭开产品经理的核心工作要点。无论你是新手…

11.1组会汇报-基于区块链的安全多方计算研究现状与展望

基础知识 *1.背书&#xff0c;这个词源来自银行票据业务&#xff0c;是指票据转让时&#xff0c;原持有人在票据背面加盖自己的印鉴&#xff0c;证明该票据真实有效、如果有问题就可以找原持有人。 区块链中的背书就好理解了。可以简单的理解为验证交易并声明此交易合法&…

客如云:大型业务报表的分区化改造提升性能|OceanBase 应用实践

一 概述 1 背景 在过去两到三年的时间里&#xff0c;客如云的KPOS产品在商户数量和订单量均实现了数倍的增长&#xff0c;充分展示了产品的市场吸引力和业务模式的成功。然而&#xff0c;随着更多的大型连锁商户的加入&#xff0c;客如云商家平台迎来了前所未有的挑战。特别是…

一:Linux学习笔记(第一阶段)-- 安装软件 vmware workstation 虚拟机软件 centos系统

目录 学习计划&#xff1a; 资源准备 虚拟机软件&#xff1a;就别自己找了 现在换网站了 下载比较费劲 Centos8&#xff1a; 阿里云镜像地址下载&#xff08;下载比较版 但是有不同版本&#xff09;&#xff1a;centos安装包下载_开源镜像站-阿里云 百度网盘地址&#xff…

git 删除远程不存在本地命令却能看到的分支

要删除远程不存在但本地却能看到的分支&#xff0c;你可以按照以下步骤操作&#xff1a; 删除本地分支&#xff1a; 如果你确定要删除的分支已经没有用处&#xff0c;可以使用以下命令来删除本地分支&#xff1a; git branch -d <branch-name>这里的 <branch-name>…

为数据集而生的 SQL 控制台

随着数据集的使用量急剧增加&#xff0c;Hugging Face 社区已经变成了众多数据集默认存放的仓库。每月&#xff0c;海量数据集被上传到社区&#xff0c;这些数据集亟需有效的查询、过滤和发现。 Dataset Monthly Creations 每个月在 Hugging Face Hub 创建的数据集 我们现在非常…

城市道路智慧照明服务认证介绍

城市道路智慧照明服务认证介绍 一 认证依据标准 城市道路智慧照明服务认证主要依据《城市道路智慧照明服务评价技术规范》标准&#xff0c;对城市道路照明服务提供商在智慧照明领域的服务质量、技术能力、管理水平等方面&#xff0c;进行综合评估和认证。 二 认证范围 城市道路…

云原生开源开发者沙龙丨AI 应用工程化专场杭州站邀您参会

云原生开源开发者沙龙 AI 原生应用架构专场&#xff0c;邀您一起交流&#xff0c;探索 AI 原生应用的工程化落地&#xff01; 活动简介 AI 驱动的应用程序开发、部署和运维&#xff0c;给应用带来了新的生命力和想象空间。但大部分开发者对 AI 应用的编程框架、可观测体系、网…

Selenium的下载及chrome环境搭建

Selenium的下载及环境的搭建 1.安装python环境 conda 安装python环境《略》2.在CMD在使用pip下载Selenium pip install selenium #pip安装3.下载webdriver 进入Selenium的下载界面&#xff1a;https://www.selenium.dev/downloads/ 下拉找到Browsers 4、驱动与浏览器 ht…

VBA中类的解读及应用第十七讲:类,让文本框在激活时改变颜色(下)

《VBA中类的解读及应用》教程【10165646】是我推出的第五套教程&#xff0c;目前已经是第一版修订了。这套教程定位于最高级&#xff0c;是学完初级&#xff0c;中级后的教程。 类&#xff0c;是非常抽象的&#xff0c;更具研究的价值。随着我们学习、应用VBA的深入&#xff0…

JavaCV 图像边缘检测 之 Sobel算子 算法

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…

C++ unordered封装

C 哈希-CSDN博客 哈希表是unordered系列容器的底层逻辑&#xff0c;再实现了哈希的底层后&#xff0c;我们按照如下步骤封装unordered: 1. 改变数据类型&#xff0c;将HashTable中的所有的_kv都改成T 2. 因为map需要取key&#xff0c;写一个KeyOfT的仿函数并封装 3. iterator ,…

【Nginx】前端项目开启 Gzip 压缩大幅提高页面加载速度

背景 Gzip 是一种文件压缩算法&#xff0c;减少文件大小&#xff0c;节省带宽从而提减少网络传输时间&#xff0c;网站会更快更丝滑。 // nginx roothcss-ecs-1d22:/etc/nginx# nginx -v nginx version: nginx/1.24.0// node ndde v18.20.1// dependencies "vue": …