如何在Kotlin的HashMap中对Arraylist的项目进行分组?

我需要把时间分组在一起,比如02:10 PM,02:30 PM应该在02:00 PM – 03:00 PM。 我以yyyy-MM-dd'T'HH:mm:ss.SSS + 00:00格式获得所有时间。 如何将时间分组在一起02:10 PM格式?

目前,我把它们转换成hh:mm aa格式,并得到了列表,如何将它们分组到Arraylists中,最后将它们存储在Map中,以便我可以在Recyclerview中列出时间?

尝试像这样(给定的时间值存储在timeString ):

 val format = SimpleDateFormat("hh:mm aa") val calendar = GregorianCalendar.getInstance() val groups = items.groupBy { item -> val date = format.parse(item.timeString) calendar.setTime(date) calendar.get(Calendar.HOUR_OF_DAY) } 

(可运行演示)

看到:

  • SimpleDateFormat
  • Calendar
  • groupBy { ... }
  • java – 解析时间的格式hh:mm:ss