code: public float[] toFloatArray() {
          if (isParallel())
              return collect(DoubleCollector.toFloatArray());
          java.util.Spliterator.OfDouble spliterator = spliterator();
          long size = spliterator.getExactSizeIfKnown();
          FloatBuffer buf;
          if (size >= 0 && size <= Integer.MAX_VALUE) {
              buf = new FloatBuffer((int) size);
              spliterator.forEachRemaining((DoubleConsumer) buf::addUnsafe);
          } else {
              buf = new FloatBuffer();
              spliterator.forEachRemaining((DoubleConsumer) buf::add);
          }
          return buf.toArray();
      }
docs: Returns a {@code float[]} array containing the elements of this stream
  which are converted to floats using {@code (float)} cast operation.
  
  <p>
  This is a terminal operation.
  
  @return an array containing the elements of this stream
  @since 0.3.0