Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

510
Views
Cómo verificar el valor doble es nulo o cero en kotlin

Cómo verificar el valor doble es nulo o cero en kotlin

 val ratio:Double? = 0.0 val calRatio = if (ratio == null || ratio == 0.0) 0.12 else ratio

proporción en nulo, 0.0, 0.1

si la relación es nula o 0.0, devuelve 0.12

y la relación es 0.2 o más, luego devuelve el mismo valor de relación

cómo verificar que este algoritmo no use la declaración if

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Puede escribir esto en Kotlin idomático sin una declaración if usando takeUnless .

 val ratio: Double? = 0.0 val calRatio = ratio.takeUnless { it == 0.0 } ?: 0.12

La llamada a takeUnless comprueba si el número coincide con el predicado it == 0.0 . Si el predicado se evalúa como true , se devuelve null . Solo cuando el predicado se evalúa como false se devuelve el número real.

Podemos ver por qué esto funciona considerando los tres casos posibles:

  1. Cuando ratio es null , el predicado it == 0.0 evalúa como false . La llamada a ratio.takeUnless { it == 0.0 } devuelve el valor de ratio , que es null . Debido a que su operando del lado izquierdo es null , el operador ?: devuelve el valor del lado derecho de 0.12 .
  2. Cuando ratio es 0.0 , el predicado it == 0.0 evalúa como true . La llamada a ratio.takeUnless { it == 0.0 } ignora el valor de ratio y en su lugar devuelve null . Debido a que su operando del lado izquierdo es null , el operador ?: devuelve el valor del lado derecho de 0.12 .
  3. Cuando ratio es cualquier número distinto de cero y no nulo, el predicado it == 0.0 evalúa como false . La llamada a ratio.takeUnless { it == 0.0 } devuelve el valor de ratio , que es el número original. Debido a que su operando del lado izquierdo no es nulo, el operador ?: devuelve el valor del lado izquierdo.
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!