多かれ少なかれ次のように見える HashMap があります。
private HashMap<String, String> fu = new HashMap<String, String>();
fu.put("16:04:00.476", "A");
fu.put("16:09:58.228", "B");
fu.put("16:17:58.227", "C");
fu.put("16:22:42.478", "D");
fu.put("16:27:23.728", "E");
fu.put("16:38:34.977", "F");
fu.put("16:46:46.227", "G");
bar と呼ばれる別のタイムスタンプがあり、適切な文字を見つけたいと考えています。
private String findLetter(String timestamp) {
return "";
}
HashMap のタイムスタンプは、開始時刻と見なすことができます。つまり、A は 16:04:00.476 に開始し、B が開始するまで続きます。B は C が始まるまで続きます。これで、このメソッドは、パラメーターとして渡されたタイムスタンプが配置されている文字を返す必要があります。
最初にしたことは、タイム スタンプを Date オブジェクトに変換して、Date#after メソッドを使用して特定の開始時刻以降かどうかを確認することですが、それが次の開始時刻よりも前であることを確認するにはどうすればよいでしょうか?