Я реализую интерфейс Comparable
в тривиальном классе, который включает один int
член.
Я могу реализовать это так:
@Override
public int compareTo ( final MyType o )
{
return
Integer.valueOf( this.intVal ).compareTo(
Integer.valueOf( o.intVal )
);
}
Но это (возможно) создает 2 совершенно ненужных целочисленных объекта.
Или я могу использовать проверенный и вырезанный подход из класса Integer:
@Override
public int compareTo ( final MyType o )
{
int thisVal = this.intValue;
int anotherVal = o.intValue;
return (thisVal<anotherVal ? -1 : (thisVal==anotherVal ? 0 : 1));
}
Это довольно эффективно, но дублировать код не нужно.
Есть ли библиотека, в которой реализован этот отсутствующий метод Integer
(и Double and Float)?
public static int compare ( int v1, int v2 );