Jakiego kontenera użyć do przechowywania wartości wraz z datą? Przykładowo:
27-08-2015; 123,23
26-08-2015; 32,42
Mapa odpada, ponieważ daty mogą się powtarzać
Jakiego kontenera użyć do przechowywania wartości wraz z datą? Przykładowo:
27-08-2015; 123,23
26-08-2015; 32,42
Mapa odpada, ponieważ daty mogą się powtarzać
A co, w javie jest tylko jeden kontener? Zrób klasę, której nazwa będzie adekwatna i trzymaj to w liście.
Zrób klasę WartośćZDatą
;] Albo po ludzku napisz co chcesz z tym robić...
https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html e.g 2007-12-03T1030
Opcji jest dużo.
Wbrew obiegowej opinii Java posiada Pair, tzn.
public static void main(String[] args){
Pair<LocalDateTime, Double> first = new Pair<>(LocalDateTime.of(2015, 7, 21, 1, 00), 2.2); // javafx.util.Pair
Pair<LocalDateTime, Double> second = new Pair<>(LocalDateTime.of(2015, 7, 21, 2, 00), 2.3);
List<Pair<LocalDateTime, Double>> list = new ArrayList<>();
list.add(first);
list.add(second);
}
Ma też interfejs Map.Entry z implementacjami:
public static void main(String[] args){
Map.Entry<LocalDateTime, Double> first = new AbstractMap.SimpleEntry<>(LocalDateTime.of(2015, 7, 21, 1, 00), 2.2); // java.util.Map.Entry
Map.Entry<LocalDateTime, Double> second = new AbstractMap.SimpleImmutableEntry<>(LocalDateTime.of(2015, 7, 21, 2, 00), 2.3);
List<Map.Entry<LocalDateTime, Double>> list = new ArrayList<>();
list.add(first);
list.add(second);
}
Są jeszcze biblioteki tuple'owe, np. Apache Commons. Można też oczywiście - jak tutaj zasugerowano - stworzyć Pojo.
Służy mi to do wygenerowania wykresu salda konta bankowego, gdzie na osi X znajdą się daty, a na osi Y saldo konta. Dane pobierane z bazy danych.