src/main/java/io/reactivex/subjects/BehaviorSubject.java
@Deprecated
    @SuppressWarnings("unchecked")
    public T[] getValues(T[] array) {
        Object o = value.get();
        if (o == null || NotificationLite.isComplete(o) || NotificationLite.isError(o)) {
            if (array.length != 0) {
                array[0] = null;
            }
            return array;
        }
        T v = NotificationLite.getValue(o);
        if (array.length != 0) {
            array[0] = v;
            if (array.length != 1) {
                array[1] = null;
            }
        } else {
            array = (T[])Array.newInstance(array.getClass().getComponentType(), 1);
            array[0] = v;
        }
        return array;
    }
@Deprecated
    @SuppressWarnings("unchecked")
    public T[] getValues(T[] array) {
        Object o = value.get();
        if (o == null || NotificationLite.isComplete(o) || NotificationLite.isError(o)) {
            if (array.length != 0) {
                array[0] = null;
            }
            return array;
        }
        T v = NotificationLite.getValue(o);
        if (array.length != 0) {
            array[0] = v;
            if (array.length != 1) {
                array[1] = null;
            }
        } else {
            array = (T[])Array.newInstance(array.getClass().getComponentType(), 1);
            array[0] = v;
        }
        return array;
    }
@ Deprecated @ SuppressWarnings ( "unchecked" ) public T [ ] getValues ( T [ ] array ) { Object o = value . get ( ) ; if ( o == null || NotificationLite . isComplete ( o ) || NotificationLite . isError ( o ) ) { if ( array . length != 0 ) { array [ 0 ] = null ; } return array ; } T v = NotificationLite . getValue ( o ) ; if ( array . length != 0 ) { array [ 0 ] = v ; if ( array . length != 1 ) { array [ 1 ] = null ; } } else { array = ( T [ ] ) Array . newInstance ( array . getClass ( ) . getComponentType ( ) , 1 ) ; array [ 0 ] = v ; } return array ; }
Returns a typed array containing a snapshot of all values of the Subject.
<p>The method follows the conventions of Collection.toArray by setting the array element
after the last value to null (if the capacity permits).
<p>The method is thread-safe.
@param array the target array to copy values into if it fits
@return the given array if the values fit into it or a new array containing all values
@deprecated in 2.1.14; put the result of {@link #getValue()} into an array manually, will be removed in 3.x
Returns a typed array containing a snapshot of all values of the Subject . <p > The method follows the conventions of Collection . toArray by setting the array element after the last value to null ( if the capacity permits ) . <p > The method is thread - safe .