-
2022-03-10 14:31:08
1)将当前时间转为和需要判断的时间区间相同格式的时间
例如判断当前时间是否在HH:mm的时间区间内(例时间区间0点到6点 [00:06])
String strStartTime = "0:00";
String strEndTime = "6:00";当前时间需转为HH:mm的时间格式:
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String now = sdf.format(new Date());
//HH:mm格式的当前时间
Date nowTime = sdf.parse(now);//时间区间String转Date
Date startTime = sdf.parse(strStartTime);
Date endTime = sdf.parse(strEndTime);2)调用isEffectiveDate(Date nowTime, Date startTime, Date endTime) 方法
在区间内返回true ,不在区间内返回false
代码如下:
/** * 判断当前时间是否在[startTime, endTime]区间,注意三个参数的时间格式要一致 * @param nowTime * @param startTime * @param endTime * @return 在时间段内返回true,不在返回false */ public static boolean isEffectiveDate(Date nowTime, Date startTime, Date endTime) { if (nowTime.getTime() == startTime.getTime() || nowTime.getTime() == endTime.getTime()) { return true; } Calendar date = Calendar.getInstance(); date.setTime(nowTime); Calendar begin = Calendar.getInstance(); begin.setTime(startTime); Calendar end = Calendar.getInstance(); end.setTime(endTime); return date.after(begin) && date.before(end); } public static void main(String[] args) { /** * 判断当前时间是否在一个时间段内 HH:mm 格式 */ String strStartTime1 = "00:00"; String strEndTime1 = "6:00"; SimpleDateFormat sdf = new SimpleDateFormat("HH:mm"); String now = sdf.format(new Date()); Date nowTime; try{ nowTime = sdf.parse(now); Date startTime1 = sdf.parse(strStartTime1); Date endTime1 = sdf.parse(strEndTime1); // 注:也可以通过此方式判断当前时间是否具体时间段内 yyyy-MM-dd HH:mm:ss格式 [2022-03-09 12:00:00,2022-03-10 15:00:00] // 当前时间和时间段的格式保持一致即可判断 if (isEffectiveDate(nowTime, startTime1, endTime1)) { System.out.println("当前时间在时间段内["+strStartTime1+","+strEndTime1+"]"); } else { System.out.println("当前时间不再时间段内["+strStartTime1+","+strEndTime1+"]"); } }catch (Exception e){ e.printStackTrace(); } }
更多相关内容 -
蓝桥杯 java 时间显示
2022-02-07 20:47:12小蓝要和朋友合作开发一个时间显示的网站。 在服务器上,朋友已经获取了当前的时间,用一个整数表示,值为从 1970年 11 月 11 日 00:00:00 到当前时刻经过的毫秒数。...import java.util.*; public class Main {小蓝要和朋友合作开发一个时间显示的网站。
在服务器上,朋友已经获取了当前的时间,用一个整数表示,值为从 1970年 11 月 11 日 00:00:00 到当前时刻经过的毫秒数。
现在,小蓝要在客户端显示出这个时间。小蓝不用显示出年月日,只需要显示出时分秒即可,毫秒也不用显示,直接舍去即可。
给定一个用整数表示的时间,请将这个时间对应的时分秒输出。
评测用例规模与约定
对于所有评测用例,给定的时间为不超过 10^18
的正整数。import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); //题目测试的数值最大不超过10的18次方,所以存储输入的数据类型用long long n = cin.nextLong(); //先转化成秒 n /= 1000; //超过24小时的时间舍去,只保留最后一天的时间即可 n %= (24 * 60 * 60); //输出对应时间即可 System.out.printf("%02d:", n / 3600); System.out.printf("%02d:", n / 60 % 60); System.out.printf("%02d\n", n % 60); cin.close(); } }
-
Java时间Calendar
2020-07-27 22:44:00Java时间类操作Calendar // 其日历字段已由当前日期和时间初始化: Calendar rightNow = Calendar.getInstance(); // 子类对象 // 获取年 int year = rightNow.get(Calendar.YEAR); // 获取月 int month = right...Java时间类操作Calendar
// 其日历字段已由当前日期和时间初始化: Calendar rightNow = Calendar.getInstance(); // 子类对象 // 获取年 int year = rightNow.get(Calendar.YEAR); // 获取月 int month = rightNow.get(Calendar.MONTH); // 获取日 int date = rightNow.get(Calendar.DATE); System.out.println(year + "年" + (month + 1) + "月" + date + "日");
package cn.itcast_02; import java.util.Calendar; /* * public void add(int field,int amount):根据给定的日历字段和对应的时间,来对当前的日历进行操作。 * public final void set(int year,int month,int date):设置当前日历的年月日 */ public class CalendarDemo { public static void main(String[] args) { // 获取当前的日历时间 Calendar c = Calendar.getInstance(); // 获取年 int year = c.get(Calendar.YEAR); // 获取月 int month = c.get(Calendar.MONTH); // 获取日 int date = c.get(Calendar.DATE); System.out.println(year + "年" + (month + 1) + "月" + date + "日"); // // 三年前的今天 // c.add(Calendar.YEAR, -3); // // 获取年 // year = c.get(Calendar.YEAR); // // 获取月 // month = c.get(Calendar.MONTH); // // 获取日 // date = c.get(Calendar.DATE); // System.out.println(year + "年" + (month + 1) + "月" + date + "日"); // 5年后的10天前 c.add(Calendar.YEAR, 5); c.add(Calendar.DATE, -10); // 获取年 year = c.get(Calendar.YEAR); // 获取月 month = c.get(Calendar.MONTH); // 获取日 date = c.get(Calendar.DATE); System.out.println(year + "年" + (month + 1) + "月" + date + "日"); System.out.println("--------------"); c.set(2011, 11, 11); // 获取年 year = c.get(Calendar.YEAR); // 获取月 month = c.get(Calendar.MONTH); // 获取日 date = c.get(Calendar.DATE); System.out.println(year + "年" + (month + 1) + "月" + date + "日"); } }
小测试:
import java.util.Calendar; import java.util.Scanner; /* * 获取任意一年的二月有多少天 * * 分析: * A:键盘录入任意的年份 * B:设置日历对象的年月日 * 年就是A输入的数据 * 月是2 * 日是1 * C:把时间往前推一天,就是2月的最后一天 * D:获取这一天输出即可 */ public class CalendarTest { public static void main(String[] args) { // 键盘录入任意的年份 Scanner sc = new Scanner(System.in); System.out.println("请输入年份:"); int year = sc.nextInt(); // 设置日历对象的年月日 Calendar c = Calendar.getInstance(); c.set(year, 2, 1); // 其实是这一年的3月1日 // 把时间往前推一天,就是2月的最后一天 c.add(Calendar.DATE, -1); // 获取这一天输出即可 System.out.println(c.get(Calendar.DATE)); } }
-
实现JAVA时间加减的两种方法
2022-03-08 10:55:03JAVA的时间加减 1.获取当前系统时间 Date date = new Date(); 2.实现时间的加减的两种方法 第一种: 用java.text.SimpleDateFormat来实现 SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd"); System.out....JAVA的时间加减
1.获取当前系统时间
Date date = new Date();
2.实现时间的加减的两种方法
第一种: 用java.text.SimpleDateFormat来实现
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd"); System.out.println("现在时间:"+df.format(date)); System.out.println("昨天该时间:" + df.format(new Date(date.getTime() - 1 * 24 * 60 * 60 * 1000))); System.out.println("明天该时间:" + df.format(new Date(date.getTime() + 1 * 24 * 60 * 60 * 1000)));
获取当前毫秒值进行加减.
第二种:用java.util.Calender来实现
Calendar calendar = Calendar.getInstance(); calendar.setTime(date);//设置起时间 calendar.add(Calendar.YEAR, 1);//增加一年 //calendar.add(Calendar.DATE, 1);//增加1天 //calendar.add(Calendar.DATE, -1);//减1天 //calendar.add(Calendar.MONTH, 1);//增加一个月 System.out.println("输出::"+calendar.getTime());
-
java时间比较3种方式
2021-04-01 11:25:281 使用before和after Date1.before(Date2),当Date1小于Date2时,返回TRUE,当大于等于时,返回false; Date1.after(Date2),当Date1大于Date2时,返回TRUE,当小于等于时,返回false; public class Tet { ... -
Java时间大小比较详解
2021-02-28 14:05:11import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class Test {private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM... -
Java时间格式转换输出实现代码示例
2022-01-02 13:43:04import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DateUtils { public static void show() throws ParseException { /... -
JAVA时间类及java8新时间类
2019-06-28 17:27:20java.util.Date 时区 GMT(Greenwich Mean Time)代表格林尼治标准时间,这个大家都知道。 而CST却同时可以代表如下 4 个不同的时区: Central Standard Time (USA) UT-6:00 Central Standard Time (Australia) UT+... -
(转)java时间与时间戳互转
2021-02-12 13:32:07java中时间精确到毫秒级,所以需求时间需要 除以1000//将时间转换为时间戳public static String dateToStamp(String s) throws Exception {String res;//设置时间格式,将该时间格式的时间转换为时间戳... -
Java时间格式设置
2018-08-24 11:43:56Java时间格式 -
Java 时间与日期处理
2017-07-24 10:46:11Java 时间与日期处理 王下邀月熊 18 小时前 Java 时间与日期处理 从属于笔者的现代 Java 开发系列文章,涉及到的引用资料声明在 Java 学习与实践资料索引中。 Java 时间与日期处理 在 Java 8 之前,我们... -
java时间比较大小
2019-01-15 17:25:01之前有面试到两个日期的大小比较方式,现在整理一下几种方法。 例子: String beginTime=new String("2017-06-09 10:22:22"); String endTime=new String("2017-05-08 11:22:22"... -
Java时间日期显示
2018-05-16 22:12:51Java中最简单的就是用Date来显示时间日期。列:public static void main(String[] args) { Date date = new Date(); System.out.println(date);//显示时间日期 }以上就是Java中最简单的显示时间日期的方法。... -
java时间,日期,毫秒值,String的相互转换总结
2018-03-17 14:02:30java时间日期的各种转换总结以及应用实例 由于工作中经常要用到时间,日期,以及当前时间的毫秒值等 很多时候涉及到了它们之间的相互转换,今天就好好的总结一下. 首先基本介绍一下java中有关时间,日期的... -
java时间截取
2018-05-28 09:33:19import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * 日期处理函数 ... * 截取时间字符串 * 日期字符串转化为日期再转化为日期,消除日期字符... -
Java 时间,时间戳 往 前/后 加/减 一个小时
2020-06-23 19:21:29Java 时间,时间戳 往叠加一个小时 public Map<Long, Map<String, Object>> statusDeviceStatusByDate(String strDate) { String nowTime1 = sdf1.format(new Date()); Long nowTime = Long.valueOf... -
java 时间格式转换带有时区+08:00
2020-09-15 19:12:28最近在使用es发现通过时间范围进行查询数据,怎么都查询不出来,后来查阅了一些资料发现是传入es的时间参数需要添加时区,于是乎查阅了很多资料,把我整的很晕,下面的方法是我测试过没问题的代码。 ... -
Java时间格式化年-月-日-时间
2019-03-16 21:07:23SimpleDateFormat类的format方法才是正确格式化时间的不错选择! yyyy表示年 mm表示月 不多说,很直观大家都能明白 a表示的是上午下午 - :只是分隔符而已,根据自己的情况去改变 年月日的位置也是可以调换的 ... -
Java时间和时间戳的相互转换
2018-07-10 10:29:20时间转换为时间戳: /* * 将时间转换为时间戳 */ public static String dateToStamp(String s) throws -
java时间和时间戳的相互转换
2018-11-22 15:48:24我是使用网上的时间戳转换工具转换的,一开始是怀疑网上的工具不靠谱,就写了个java,自己转一下,主要是时间戳与yyyy-MM-dd时间格式的互转,贴一下代码 package org.time; import java.text.ParseException; ... -
Java时间处理(UTC时间和本地时间转换)
2017-06-22 20:25:21UTC时间和本地时间两者之间的转换 -
Java时间莫名加8小时,已解决
2019-10-25 13:49:24数据库中存储的是UTC时间,查询数据时,从数据库返回的是一个时间戳,通过Java的Date来接收这个这个时间戳,会把时间按照服务器所在时区转化时间,所以就会造成java代码拿到的时间比数据库中显示的时间多8小时,这是... -
java时间字符串转时间戳
2019-03-13 13:59:54Java 获取当天、当月、当年开始时间戳 测试类 代码片. @Test public void dateToStamp() throws Exception { String str = "2019-03-13 13:54:00"; SimpleDateFormat simpleDateFormat = new ... -
java时间格式去.0
2018-07-18 16:24:48DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date= df.parse(b.getdDateTime()); String Datetime = df.format(date); b.setdDateTime(Datetime...有时候数据库的时间与正常时间对不上 可能... -
Java时间大小比较
2016-12-02 11:37:04import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class Test { private static SimpleDateFormat sdf = new SimpleDateFormat -
Mysql数据的时间类型对应的java时间类型
2018-03-29 16:55:21Mysql 与 java 的时间类型 MySql的时间类型有 Java中与之对应的时间类型 date java.sql.Date Datetime java.sql.Timestamp Timestamp java.sql.Timestamp Time java.sql.Time Ye... -
java时间格式的转换以及EXCEL里面时间的读取
2018-02-08 11:24:52由于excel 里面的时间格式是自定义,所以javaPOI 读取出来的是一串数字,因此需要转换格式 三、 /**通过此方法再将被格式化了的时间字符串转换回标准时间类格式,再形成其他的时间 SimpleDateFormat ... -
java时间字符串如何转毫秒数
2018-08-15 14:48:07java时间字符串转毫秒数 解决方法: 使用Calendar c = Calendar.getInstance(); 详情:http://www.yayihouse.com/yayishuwu/chapter/1490 -
Java时间工具类(获取上个月、获取月份1月1号时间戳、获取月份最后一天时间戳...)
2019-07-16 09:47:19在开发中我们经常还会用到日期时间,以下是一个日期时间工具类,包含: 获取每月月初时间戳 获取每月15号时间戳 获取每月月末时间戳 获取当前被格式化后的日期 从这些方法中你可以改写出你需要的方法PS:不足之...
收藏数
2,923,370
精华内容
1,169,348