Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

180
Visualizações
¿Alguna diferencia entre String.getOrElse() y String.elementAtOrElse()?

Como dice el título:

¿Hay alguna diferencia entre String.getOrElse() y String.elementAtOrElse() ? Desde un punto de vista funcional parecen completamente idénticos, ¿tal vez alguna diferencia de rendimiento?

Las mismas cuentas de preguntas para String.getOrNull() y String.elementAtOrNull() .

over 4 years ago · Hanz Gallego
3 Respostas
Responde à pergunta

0

Los mismos enlaces que incluyó en su pregunta le permiten ver el código fuente de cada implementación que le dice que no, no hay diferencia.

De hecho, elementAtOrNull literalmente solo llama a getOrNull .

over 4 years ago · Hanz Gallego Relatório

0

Al observar la implementación en https://github.com/JetBrains/kotlin/blame/master/libraries/stdlib/common/src/generated/_Strings.kt , se ven idénticos.

 /** * Returns a character at the given [index] or the result of calling the [defaultValue] function if the [index] is out of bounds of this char sequence. * * @sample samples.collections.Collections.Elements.elementAtOrElse */ @kotlin.internal.InlineOnly public inline fun CharSequence.elementAtOrElse(index: Int, defaultValue: (Int) -> Char): Char { return if (index >= 0 && index <= lastIndex) get(index) else defaultValue(index) }
 /** * Returns a character at the given [index] or the result of calling the [defaultValue] function if the [index] is out of bounds of this char sequence. */ @kotlin.internal.InlineOnly public inline fun CharSequence.getOrElse(index: Int, defaultValue: (Int) -> Char): Char { return if (index >= 0 && index <= lastIndex) get(index) else defaultValue(index) }

Espero que alguien más pueda proporcionar detalles sobre la historia de esto.

over 4 years ago · Hanz Gallego Relatório

0

Para explicar el por qué:

Del problema que los agregó en https://youtrack.jetbrains.com/issue/KT-6952 , parece que elementAtOrElse() se agregó primero y se nombró así por compatibilidad con Iterable s, mientras que getOrElse() se agregó más tarde por compatibilidad. con List s.

over 4 years ago · Hanz Gallego Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda