Try their containsKey method. If the value comes back 0, use that method to check if the map contains the key - if it does, then the key's value really is 0. If it doesn't, then the key is not set.
A double is, in fact, an object, so you should probably just use TIntObjectHashMap<double>.
fastutil is all ways better than Trove. There is IntSortedSet interface with firstInt() and lastInt() methods.