Операция похожа на Java, но нет необходимости использовать интерфейс. Если вы хотите, чтобы фрукт был сопоставим, используйте метод. Конструктивно компилятор не будет выполнять проверки и во время выполнения будет работать:
compareTo(compareFruit: Fruit): int {
return this.quantity - compareFruit.quantity;
}
Однако это происходит как в Java. Чтобы отсортировать массив в Java, вы используете метод сортировки коллекции и можете передать компаратор. Способ заказа элементов в машинописи идентичен. Вызывается метод сортировки коллекции, и в качестве параметра передается метод сравнения. Вот пример:
let fruits = [];
fruits.push(new Fruit(...));
fruits.push(new Fruit(...));
fruits.push(new Fruit(...));
fruits.push(new Fruit(...));
fruits.sort((fruitA, fruitB) => fruitB.quantity - fruitA.quantity);