我将要记录特定的日期和发生在它们上面的事件,但是它们并没有全部具有相同数量的事件。
以下是一些我想记录的日期及其事件的示例:
日期:“ 10.31.18”事件:“万圣节”,“爸爸的生日”。
日期:“ 11.22.18”事件:“感恩节”
日期:“ 7.25.18”事件:“妈妈的生日”,“道尔顿的生日”,“马克的生日”
记录此数据的最佳方法是什么?我以为这是一个数组,但是那会是什么样子?
答案 0 :(得分:1)
按照您编写它的方式,它只是普通的Map<String, List<String>>
,通常是:
def events = [
"10.31.18": ["Halloween", "Dad's Birthday"],
"11.22.18": ["Thanksgiving"],
"7.25.18": ["Mom's Birthday", "Dalton's Birthday", "Mark's Birthday"]
]
要将空列表放入此地图,您需要:
events."10.31.19" = []
更好的主意是使用Date
作为密钥,而不是简单地使用String
作为密钥,例如
def events = [:]
events.(new Date().parse("dd.MM.yyyy","22.03.2019")) = []
恕我直言,最好的主意是做一些面向对象的操作,创建一个名为DatedEvents
的类,该类必须具有Date date
和List<String> events
字段,并将该类用作存储。