79368616

Date: 2025-01-19 08:28:54
Score: 0.5
Natty:
Report link

There is a few option, one of the option is more easy to understand, like Mateusz Kubuszok told above.

  1. Using map with IF - ELSE,

    val withMap = serversProto.map(server => if (server.registrationStatus == "REGISTERED") { server.copy(name = s"${server.name}-updated") } else { server } )

  2. Using map with Pattern Matching

    val withPatternMatch = serversProto.map { case server if server.registrationStatus == "REGISTERED" => server.copy(name = s"${server.name}-updated") case server => server }

  3. Using collect

    val withCollect = serversProto.collect { case server if server.registrationStatus == "REGISTERED" => server.copy(name = s"${server.name}-updated") case server => server }

But i recommend using no. 3, because its more clean and simple and more idiomatic in scala

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: Agani Satria