JAVA Sum来自hashset的for循环

时间:2015-11-01 14:27:00

标签: java sum hashset

我有一个带开始和结束时间的哈希集,在我的代码中我计算它们之间的差异所以我的结果是(以分钟为单位): 60,30等 这是我的问题,我怎样才能得到所有这些结果的总和? 所以我想要一个结果与每个结果的总和(例如90)

下面是没有我想要的计数的代码

        for (Verhuur verhuur : verhuur)
    {
       //begin en eindtijd in variabelen stoppen
       String starttime = verhuur.Begintijd;
       String endtime = verhuur.Eindtijd;
       SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
       try
       {
        //begin en eindtijd pasrsen tot juist formaat   
        Date date1 = format.parse(starttime);
        Date date2 = format.parse(endtime);
        long difference = date2.getTime() - date1.getTime();
        System.out.println(difference/1000/60);
       }

       catch(Exception ex)
       {
        ex.printStackTrace();
       }  

    }

1 个答案:

答案 0 :(得分:0)

稍微整理一下

  • dateformat用于每个循环。你可以在外面实例化效率
  • for循环不会比较,因为你有两个verhuur。我认为应该是一个苦行僧
  • 将for total放入for循环中以添加分钟

    long totalMins = 0;
    final SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
    for (Verhuur verhuur : verhuurs) {
       Date date1 = format.parse(verhuur.begintijd);
    
       Date date2 = format.parse(verhuur.eindtijd);
       long difference = date2.getTime() - date1.getTime();
       total += ((difference/1000)/60);
    }
    
    System.out.println("total is " + total);