Идиома для Опции Scala при выполнении тестов равенства

Я пошел бы с ответом Ryan, если Вы действительно хотите сделать это.

В целом на *отклоняют среду, Вы всегда хотите допустить ошибку при выдаче как можно меньше полномочий.

9 раз из 10, 755 идеальное разрешение для этого - поскольку единственный пользователь со способностью изменить файлы будет веб-сервером. Измените это на 775 с Вашим пользователем FTP в группе, если ДЕЙСТВИТЕЛЬНО необходимо изменить это.

, Так как Вы плохо знакомы с php своим собственным подтверждением, вот полезная ссылка для улучшения безопасности Вашего сервиса загрузки: move_uploaded_file

9
задан Trenton 24 November 2009 в 19:56
поделиться

5 ответов

Вы также можете использовать:

if (o == Some(4)) //do something
9
ответ дан 4 December 2019 в 06:11
поделиться

Как насчет этого:

val o = Some(4)
o match {
  case Some(4) => true
  case _ => false
}
5
ответ дан 4 December 2019 в 06:11
поделиться

Мне это кажется достаточно чистым:

o.map(4==).getOrElse(false)

Если хотите, вы можете даже добавить неявное преобразование, чтобы добавить удобный метод для этого:

implicit def richOption[A](o: Option[A]) = new {
  def test(p: A => Boolean): Boolean = o.map(p).getOrElse(false)
}
7
ответ дан 4 December 2019 в 06:11
поделиться
o.map(_ == 4).getOrElse(false)
1
ответ дан 4 December 2019 в 06:11
поделиться

Следующее кажется мне наиболее интуитивным, если вас не заботят накладные расходы на создание объекта.

val o = Some(4)
Some(4) == o

Другой неподготовленный метод

val o = Some(4)
val Some(x) = o; x==4 // Edit: will not compile of o = None
2
ответ дан 4 December 2019 в 06:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: