私は自分の電子メールの情報グラフを作成しています。私はそれを改善したいサブマップ期間中
for (Person p : AL_persons) {
for (int y = firstYear; y <= lastYear; y++) {
for (int m = 1; m <= 12; m++) {
ArrayList<Email> emailThatMonth = new ArrayList<Email>();
for (Email e : p.emails) {
if (e.date.year().get() == y
&& e.date.monthOfYear().get() == m) {
emailThatMonth.add(e);
}
}
if (emailThatMonth.size() > maxEmailsMonth)
maxEmailsMonth = emailThatMonth.size();
}
}
}
: それは非常によく行くが、物事は、彼らがする必要がさらに混乱している、私は誰かが月に私をsendedでは電子メールの量を取得したい場合、たとえば、その後、私はこれを使用しますだから私はそれをはるかに簡単に得ることができます 私は毎月の最初の日を格納することを考えていたので、私はそれを再利用することができます。しかし、それは非常にいくつかの仕事(私は気にしないことだ、
for(DateTime ld : monthStarts) {
ArrayList<Email> emailThatMonth = emails.submap(ld, ld.plusMonths(1));
}
私は、これは動作するはずだと思う: は
ArrayList<DateTime> monthStarts = new ArrayList<DateTime>();
for (int y = firstYear; y <= lastYear; y++) {
for (int m = 1; m <= 12; m++) {
monthStarts.add(new LocalDate(y+"-"+m+"-01"));
}
}
その後、私はサブマップを使用することができます電子メールを取得するために(上のここからのコードをテストしていません)あなたがそれについてどう思っているかを知りたい、それに対処するためのヒントや他のアイデアがあるかどうかを知りたかっただけです。
ノート、私はジョダ時間を使用(と私はそれを愛する)
だから、どんな情報を得ようとしていますか?毎月の電子メールの数は?ある月に受け取った電子メールのほとんどは?あなたが範囲外に出る前に読むことのない多くの変数を書くことになるようです。 – Thomas
私はarrayList人を持っている、人はその人からのすべての電子メールでarrayListを保持しています。一人一ヶ月の期間内にメール全体を取得したい。 私は、すべての人からのすべての電子メールを保持するarrayListも持っています。そこで、1ヶ月以内にすべての電子メールを取得したい(すべての人)。 – clankill3r