Почему Some (1) .toString не равно «1» в scala? - PullRequest
0 голосов
/ 10 марта 2020

Спасибо за любые предложения!

Some(1).toString.equals("1")        
False

Some(1).toString.getClass           
Class[_ <: String] = class java.lang.String
"1".getClass                        
Class[_ <: String] = class java.lang.String

1 Ответ

6 голосов
/ 10 марта 2020

Если вы хотите проверить, что находится внутри Option, используйте contains

Some(1).contains(1) // true
Some(2).contains(1) // false
None.contains(1) // false

Если вы хотите String значение элемента в Option, используйте fold указать значение по умолчанию

Some(1).fold("")(_.toString) // "1"
None.fold("")(_.toString) // ""
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...