code: @Nullable
    @ReturnsMutableCopy
    public static float [] getCopy (@Nullable final float [] aArray,
                                    @Nonnegative final int nStartIndex,
                                    @Nonnegative final int nLength)
    {
      if (aArray == null)
        return null;
      final float [] ret = new float [nLength];
      System.arraycopy (aArray, nStartIndex, ret, 0, nLength);
      return ret;
    }
docs: Get a 1:1 copy of the passed array using the passed number of array
  elements starting at the specified index. Nested elements are not
  deep-copied - the references are re-used!
  
  @param aArray
  The array to be copied.
  @param nStartIndex
  The index where the copying should start. Must be &gt;= 0!
  @param nLength
  The number of elements to be copied into the new array. May not be
  &lt; 0. If the passed number of elements exceeds the number of
  elements in the array, an exception is thrown.
  @return <code>null</code> if the passed array is <code>null</code> - a non-
  <code>null</code> copy otherwise.
  @see System#arraycopy(Object, int, Object, int, int)