网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

使用java如何获取指定时间段的值-创新互联

本篇文章为大家展示了使用java如何获取指定时间段的值,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

10年积累的做网站、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有加格达奇免费网站建设让你可以放心的选择与我们合作。

直接上代码

测试类


public class TestData {
  public static void main(String[] args) {

    List list = new ArrayList<>();
    list.add(new TsData("11","08",11111l));
    list.add(new TsData("11","080405",22222l));
    list.add(new TsData("11","09070802",33333l));
    list.add(new TsData("11","09234567",44444l));
    list.add(new TsData("11","9867342",55555l));
    list.add(new TsData("11","08607342",55555l));
    list.add(new TsData("11","08607342",555556l));
    list.add(new TsData("11","dad8607342",5555567l));

    System.out.println(doCalculateActionTime(list,"08")+" uiui");
  }

  public static List doCalculateActionTime(List tsData, String action) {
    //step1:按照两位一个分解动作代码
    //step2:找到动作代码总包含action代码的时间,找到第一次出现的时间和最后一次出现的时间
    List actionTime = new ArrayList<>();
    if (CollectionUtils.isEmpty(tsData)) {
      return actionTime;
    }
    //是不是第一次出现
    boolean isFirst = true;
    //是不是已经出现过
    boolean isAppear = false;
    ActionTime record = new ActionTime();
    for (TsData data : tsData) {
      if (null == data.getTimestamp() || StringUtils.isEmpty(data.getValue())) {
        continue;
      }
      List actions = ProjectStringUtil.getStrList(data.getValue(), 2);
      System.out.println(actions+" actions");

      //第一次出现,则记录时间,最后一次出现也记录时间
      if (actions.contains(action)) {
        if (isFirst) {
          //记录开始时间
          record = new ActionTime();
          record.setStartTime(data.getTimestamp());
          //设置标志位
          isFirst = false;
          isAppear = true;
        }

      } else {
        //判断前面是否已经出现过action
        if (isAppear) {
          //记录结束时间
          record.setEndTime(data.getTimestamp());
          actionTime.add(record);
          //重置标志位
          isAppear = false;
          isFirst = true;
        }

      }

    }
    return actionTime;
  }
}

当前标题:使用java如何获取指定时间段的值-创新互联
分享链接:http://bjjierui.cn/article/ecgpg.html

其他资讯