Wpis z mikrobloga

Mireczki, potrzebuję pomocy, wujek Google zawiódł ()
Robię sobie operację na ImmutableRangeSet z Guavy:
http://pastebin.com/7nT7CDGS
Zgodnie z javadocami

Duplicate or connected ranges are permitted, and will be merged

Ale w operacji .addAll(r2) dostaję:

IllegalArgumentException: Ranges may not overlap, but received (08:00:00.000%10:00:00.000] and (09:00:00.000%11:00:00.000]

Czyli co, w dokumentacji oszukujo?

Jak mam to zrobić, żeby jako wynik otrzymać RangeSet z Range-m (08:00:00.000%11:00:00.000]?
#programowanie #java #guava
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@skradzionyLogin: hm, trochę słabo...
Może jakiś inny typ kolekcji? Nie koniecznie z Guavy.
Zależy mi na tym, żeby mieć kolekcję przedziałów czasowych opartych o LocalTime tak, jak to robi ImmutableRangeSet, ale w taki sposób, żebym mógł je sumować i wyznaczać części wspólne i nie musieć pisać ręcznie algorytmów :p
RangeSet był pierwszą próbą, widocznie nie do końca trafioną.
  • Odpowiedz
  • 0
@akurczak: Krolu zloty, dziala!
Kurcze, myslalem, ze ImmutableRangeSet I jego builder opieraja sie w srodku na TreeRangeSet...
Dzieki, oszczedziles mi rozpoczecia dnia od recznego pisania algorytmu! :)
  • Odpowiedz