Задать вопрос
Ответы пользователя по тегу Java
  • Как отсортировать числа в конец массива?

    @lacredin Автор вопроса
    Программист
    Можно вот так сделать. Пример написан на kotlin.
    Этот код поместит любую строку, начинающуюся с числа ниже строки, начинающейся с другого символа.
    val russianCollator = Collator.getInstance(Locale("ru", "RU"))
    val array = arrayListOf("Ab", "01", "Ba", "Aa", "90")
            val russianCollator = Collator.getInstance(Locale("ru", "RU"))
            val array_2 = array.sortedWith(
                    kotlin.Comparator { o1, o2 ->
                        if(o1.firstOrNull()?.isDigit() == true && o2.firstOrNull()?.isDigit() == false) return@Comparator  1
                        if(o1.firstOrNull()?.isDigit() == false && o2.firstOrNull()?.isDigit() == true) return@Comparator  -1
                        russianCollator.compare(o1, o2)
                    }
            )


    Хотя, заявленному в описании требованию, этот код не соответствует, как минимум, символы типа ! +- и тд. будут стоять первыми
    Ответ написан
    Комментировать