code: public <E extends Exception> long compute(T key, Try.BiFunction<? super T, Long, Long, E> remappingFunction) throws E {
          N.checkArgNotNull(remappingFunction);
  
          final long oldValue = get(key);
          final long newValue = remappingFunction.apply(key, oldValue);
  
          if (newValue > 0) {
              set(key, newValue);
          } else {
              if (oldValue > 0) {
                  remove(key);
              }
          }
  
          return newValue;
      }
docs: The implementation is equivalent to performing the following steps for this LongMultiset:
  
  <pre>
  final long oldValue = get(key);
  final long newValue = remappingFunction.apply(key, oldValue);
  
  if (newValue > 0) {
  set(key, newValue);
  } else {
  if (oldValue > 0) {
  remove(key);
  }
  }
  
  return newValue;
  </pre>
  
  @param key
  @param remappingFunction
  @return