java 截取小时 时间段,一半个小时为单位

摘要:
/***截取小时时间段,半小时为单位**@paramstartTime06:00格式强制**:***@paramendTime18:00格式强制**:***@return*/publicstaticListgetHourParts(StringstartTime,StringendTime){ListList=newArrayList();intstartI
/**
     * 截取小时 时间段,一半个小时为单位
     *
     * @param startTime 06:00 格式强制 **:**
     * @param endTime 18:00 格式强制 **:**
     * @return
     */
    public static List<String> getHourParts(String startTime ,String endTime){
        List<String> list = new ArrayList<>();
        int startIndex = 0;
        int endIndex = 0;
        //30分钟一次1天有48次
        int hoursNumber = 48;
        //开始时间为0秒,第一次循环为900秒
        int startValueZero = 0;
        //开始时间为-900秒,第一次循环为0秒
        int startValueNineHundred = -1800;
        //初始时间都为00:00
        String initialTimeFront = "00:00";
        //循环时间为00:00~23:30
        for (int i = 0; i < hoursNumber; i++) {
            //每次循环之前加15分钟
            startValueZero = startValueZero + 1800;
            //每次循环之前加15分钟
            startValueNineHundred = startValueNineHundred + 1800;
            //判断初始秒树是否为0
            if(startValueZero != 0){
                //换算成小时
                int conversionHours = (Integer.valueOf(startValueZero) / 3600);
                //换算成分钟
                int conversionMinute = (Integer.valueOf(startValueZero) % 3600 / 60);
                //把生成的时间转化成字符串
                String hourst = String.valueOf(conversionHours);
                String minute = String.valueOf(conversionMinute);
                //如果小时的长度等于1个,在其前面加个0
                if(hourst.length() == 1){
                    hourst = "0"+hourst;
                }
                //如果小时的到达24点让其初始化为00
                if(hourst.equals("24")){
                    hourst = "00";
                }
                //如果分钟的长度等于1个,在其前面加个0
                if(minute.length() == 1){
                    minute = "0"+minute;
                }
            }
            //循环时间为00:30~00:00
            if(startValueNineHundred != 0){
                //换算成小时
                int conversionHourst = (Integer.valueOf(startValueNineHundred) / 3600);
                //换算成分钟
                int conversionMinute = (Integer.valueOf(startValueNineHundred) % 3600 / 60);
                //把生成的时间转化成字符串
                String hourst = String.valueOf(conversionHourst);
                String minute = String.valueOf(conversionMinute);
                //如果小时的长度等于1个,在其前面加个0
                if(hourst.length() == 1){
                    hourst = "0"+hourst;
                }
                //如果小时的到达24点让其初始化为00
                if(hourst.equals("24")){
                    hourst = "00";
                }
                //如果分钟的长度等于1个,在其前面加个0
                if(minute.length() == 1){
                    minute = "0" + minute;
                }
                //拼接小时和分钟
                initialTimeFront = hourst + ":" + minute;
                if(initialTimeFront.equals(startTime)){
                  startIndex = i;
                }
                if(initialTimeFront.equals(endTime)){
                    endIndex = i + 1;
                }
            }
            //将所有字段放入list中
            list.add(initialTimeFront);
        }
        //闭合
        list.add(initialTimeFront);
        //截取
        List<String> subList = list.subList(startIndex, endIndex);
        return subList;
    }

免责声明:文章转载自《java 截取小时 时间段,一半个小时为单位》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇分布式一致性协议之2PC与3PC旅行商问题——模拟退火算法实现下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Java 字符串常用操作(String类)

字符串查找 String提供了两种查找字符串的方法,即indexOf与lastIndexOf方法。 1、indexOf(String s) 该方法用于返回参数字符串s在指定字符串中首次出现的索引位置,当调用字符串的indexOf()方法时,会从当前字符串的开始位置搜索s的位置;如果没有检索到字符串s,该方法返回-1 1 String str ="We a...

Java获取随机数的3种方法

方法1 (数据类型)(最小值+Math.random()*(最大值-最小值+1)) 例: (int)(1+Math.random()*(10-1+1)) 从1到10的int型随数 方法2 获得随机数 for (int i=0;i<30;i++) {System.out.println((int)(1+Math.random()*10));} (int...

Delphi声明Record变量后直接初始化

 TARec = record    A1: string;    A2: string;  end;   TBRec = record    A1: string;    A2: string;    ARec: TARec;  end;   PAppWindow = ^TAppWindow;  TAppWindow = Record    Width,...

Spring Security 自定义登录认证(二)

一、前言 本篇文章将讲述Spring Security自定义登录认证校验用户名、密码,自定义密码加密方式,以及在前后端分离的情况下认证失败或成功处理返回json格式数据 温馨小提示:Spring Security中有默认的密码加密方式以及登录用户认证校验,但小编这里选择自定义是为了方便以后业务扩展,比如系统默认带一个超级管理员,当认证时识别到是超级管理员账...

java 注解的几大作用及使用方法详解

Java 注解,从名字上看是注释,解释。但功能却不仅仅是注释那么简单。注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后某个时刻方便地使用这些数据(通过 解析注解 来使用这些数据),常见的作用有以下几种: 生成文档。这是最常见的,也是java 最早提供的注解。常用的有@see @param @return 等 跟...

上传下载后台函数以及前端脚本(webuploader) 备份

1 import java.io.BufferedOutputStream; 2 import java.io.IOException; 3 import java.io.InputStream; 4 import java.io.PrintWriter; 5 import java.io.UnsupportedEncodingExce...