我的事实表中有一个字段称为过期日期。我想创建一个将执行以下操作的集合:如果到期日为0到29之间,则过期0到29天,如果在30到59天之间,那么'30 - 59天过期。我该如何创造这个?
答案 0 :(得分:1)
我们需要知道你正在使用什么类型的数组,链接列表,或者我喜欢的这些东西,矢量等等。
如果您使用的是矢量,您可以创建自己的类作为数据类型,例如:
Class MyData
{
String name;
int daysPastDue; // how you want to factor this is up to you,
// i suggest looking into Java.util.date or Java.util.calendar
public MyData
{
name = "";
daysPastDue = 0;
}
}
Class DoWork
{
public void myWork() // excuse the indent, forgot to put in the class name
{
vector <MyData> input;
MyData 0To29 [] = new MyData[input.size()];
MyData 33To59 [] = new MyData[input.size()];
MyData item = new MyData();
int 0To29count = 0;
int 30To59count = 0;
for (i = 0; i <= list.size(); i++)
{
item = input.elementAt(i)
if (item.daysPastDue <= 29)
{
0To29[0To29Count] = input;
0To29Count ++;
}
elseif (item.daysPastDue >= 30 && item.daysPastDue <= 59)
{
30To59[30To59Count] = input;
30To59Count ++;
}
}
}
}
然后你有2个数组,可以根据需要输出它们。但是我建议从daysPastDue = 100000开始并递减它并通过向量检查数字,直到你列出了向量中的所有项目。这样他们就可以从最过去的时间到最低限度,并且你得到他们已经过去了多长时间的输出。