src/main/java/ru/mail/dondokidon/extensions/MultiCompare.java
/**
     * Sort array
     *
     * @param mas Array to sort
     * @param <SortingType> The type of objects that will be compared
     */
Sort array
@param mas Array to sort
@param  The type of objects that will be compared
Sort array @param mas Array to sort @param The type of objects that will be compared
public static <SortingType extends MultiComparable<? super SortingType>> void sort(@NotNull List<SortingType> mas){
        Object[] Temp = mas.toArray();
        rsort(Temp, null);
        ListIterator<SortingType> iter = mas.listIterator();
        for (Object item : Temp) {
            iter.next();
            @SuppressWarnings("unchecked")
            SortingType Cast = (SortingType) item;
            iter.set(Cast);
        }
    }
public static < SortingType extends MultiComparable < ? super SortingType > > void sort ( @ NotNull List < SortingType > mas ) { Object [ ] Temp = mas . toArray ( ) ; rsort ( Temp , null ) ; ListIterator < SortingType > iter = mas . listIterator ( ) ; for ( Object item : Temp ) { iter . next ( ) ; @ SuppressWarnings ( "unchecked" ) SortingType Cast = ( SortingType ) item ; iter . set ( Cast ) ; } }
Sort array
 @param mas Array to sort
 @param <SortingType> The type of objects that will be compared
Sort array @param mas Array to sort @param <SortingType > The type of objects that will be compared
//All items in Temp are SortingType class.