[英]How can i separate instances of a class on behalf of their time of creation using java?
假设我有一个类的100个实例。 我想代表这些实例的创建时间来排列它们。 例如,在2011年9月创建的对象有40个,在2011年10月创建的对象有60个。 每个实例的创建时间均为long类型。 我怎么能告诉我的Java程序对所有在9月创建的实例进行数组,而另一个对包含在10月创建的所有实例进行数组。 我使用以下代码创建了创建时间:
Date currentDate = new Date();
long timeOfCreation = currentDate.getTime();
提前致谢。
好吧,您遍历实例,检查它们的创建时间,然后将它们放入相应的列表中(我在这里不使用数组,以后可以根据需要将列表转换为数组)。
基本上,这只是从日期中获取月份的问题(您可以从时间戳中创建Date
对象),该Date
应该可以使用Calendar
(或者更好的是,使用Joda Time )来实现。
如果间隔是非标准的(例如,从15日到15日),则可能需要一个开始值和结束值进行比较。
编辑 :
如果将这些时间戳存储在数据库中,则可以创建一个查询来获取每个时间间隔的开始和结束日期之间的所有实例( ... WHERE timeOfCreation BETWEEN <start> and <end>
,请注意, <start>
和<end>
只是参数的占位符)。 然后针对您感兴趣的每个时间间隔调用该查询,例如start = September 1st 00:00:00,000
and end = September 30th 23:59:59,999
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.