Метод compareTo

Метод compareTo класса ZoneOffset сравнивает текущее смещение временной зоны с другим смещением и возвращает отрицательное число, ноль или положительное число в зависимости от того, является ли текущее смещение меньше, равным или больше указанного смещения. В параметр метода передается объект ZoneOffset для сравнения.

Импорт

kotlinimport java.time.ZoneOffset

Синтаксис

kotlinfun compareTo(other: ZoneOffset): Int

Пример

Сравним два смещения временных зон:

kotlinval offset1 = ZoneOffset.ofHours(3)
val offset2 = ZoneOffset.ofHours(-5)

val result = offset1.compareTo(offset2)
println("Comparison result: $result")

Результат выполнения кода:

kotlinString "Comparison result: 1"

Пример

Сравним одинаковые смещения временных зон:

kotlinval offset1 = ZoneOffset.ofHours(2)
val offset2 = ZoneOffset.ofHours(2)

val result = offset1.compareTo(offset2)
println("Comparison result: $result")

Результат выполнения кода:

kotlinString "Comparison result: 0"

Пример

Сравним смещения с разными часами и минутами:

kotlinval offset1 = ZoneOffset.ofHoursMinutes(1, 30)
val offset2 = ZoneOffset.ofHoursMinutes(2, 0)

val result = offset1.compareTo(offset2)
println("Comparison result: $result")

Результат выполнения кода:

kotlinString "Comparison result: -1"

Пример

Используем результат сравнения для сортировки списка смещений:

kotlinval offsets = listOf(
  ZoneOffset.ofHours(5),
  ZoneOffset.ofHours(-3),
  ZoneOffset.ofHours(0),
  ZoneOffset.ofHours(2)
)

val sortedOffsets = offsets.sortedWith(ZoneOffset::compareTo)

for (offset in sortedOffsets) {
  println(offset)
}

Результат выполнения кода:

kotlinString "-03:00"
String "+00:00"
String "+02:00"
String "+05:00"

Смотрите также

  • метод ofHours класса ZoneOffset,
    который создает смещение из количества часов
  • метод ofTotalSeconds класса ZoneOffset,
    который создает смещение из общего количества секунд
  • метод getTotalSeconds класса ZoneOffset,
    который возвращает общее количество секунд смещения
  • класс ZoneId,
    который представляет идентификатор временной зоны