Описание тега scala-option
Вариант на языке Scala - это контейнер для нуля или одного элемента данного типа.
1
ответ
Spark 2 Наборы данных опций
У меня есть набор данных строк, который я анализирую в набор данных класса case с помощью функции, которая может дать сбой (например, если данные, которые я пытаюсь проанализировать, не могут быть использованы). По этой причине эта функция возвращае…
09 ноя '16 в 15:11
4
ответа
Поведение вариантов внутри для понимания является Scala
Два вопроса новичка. Кажется, что for понимание знает о Options и может автоматически пропустить None и развернуть Some например, val x = Map("a" -> List(1,2,3), "b" -> List(4,5,6), "c" -> List(7,8,9)) val r = for {map_key <- List("WRONG…
24 фев '18 в 11:23
2
ответа
Scala Option[(A, B)] сопоставление с образцом
Я пишу генератор кода Java. У меня есть неизменная карта, которая содержит отображение из java.sql.Types [Int] в кортеж (String, String) где первое значение является типом Java, а второе - пакетом Java, из которого импортируется тип, если он не импо…
16 май '11 в 20:57
8
ответов
Правильный способ совместной работы с двумя экземплярами Option
Когда у меня есть один Option[T] Например, довольно легко выполнить любую операцию T используя монадические операции, такие как map() а также flatMap(), Таким образом, мне не нужно делать проверки, чтобы определить, определено ли оно или пусто, и об…
10 ноя '15 в 17:24
3
ответа
Как преобразовать X => Option[R] в PartialFunction[X,R]
Пока у нас есть PartialFunction[X,R] очень легко преобразовать его в функцию, возвращающую Option[R]например, def pfToOptf[X, R](f: PartialFunction[X,R])(x: X) = if (f.isDefinedAt(x)) Some(f(x)) else None Однако, что если задача противоположна: пред…
15 дек '09 в 15:41
1
ответ
Как реализовать flatMap для Option
Я пытаюсь реализовать map а также flatMap как расширение / обогащение для Option, не обманывая и не глядя на то, как это было реализовано в Скалазе. Вот что я получил до того, как застрял: package extensions.monad trait Monad[M[_]] { // >>= ::…
09 сен '14 в 21:03
1
ответ
Создание экземпляра класса case с помощью Options и перечисления Scala в Java
Кажется, что если в классе case есть как перечисления, так и опции, я не могу создать его экземпляр из Java. Рассмотрим следующее в Scala: object WeekDay extends Enumeration { type WeekDay = Value val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value } case…
15 дек '15 в 10:14
2
ответа
Как преобразовать коллекцию Scala Option[X] в коллекцию X
Я начинаю изучать Scala, и одна из вещей, которыми я заинтригована, это Option тип и обещание быть в состоянии устранить null связанные ошибки. Однако я не смог понять, как преобразовать список (или другую коллекцию), скажем, Option[String], к колле…
19 янв '11 в 01:18
2
ответа
Правильный способ построения объекта Option: Option(значение) или Some(значение)
Каковы плюсы и минусы 2 способов инициации Option объекты: 1. def getAmount: Option[Int] = { val a: Int = 1 Option(a) } 2. def getAmount: Option[Int] = { val a: Int = 1 Some(a) } Какой я должен использовать?
11 апр '15 в 15:09
1
ответ
Поведение карты () на Опции
Я пытаюсь отобразить экземпляр JSONObject в фактический экземпляр с помощью Play Combinators. Я могу правильно выполнить работу по десериализации. Вопрос в том, как map() работает с опцией [JSONObject]. Опция 1: jsonVal: Option[JSONObject] = getAsJs…
20 сен '15 в 20:48
3
ответа
Вызов Java API из Scala с нулевым аргументом
У меня есть некоторый код Scala, который должен вызывать API Java Java API принимает аргументы, которые могут быть нулевыми. Моя Скала, конечно, использует Option, Например, допустим, у меня есть конструктор объекта Java Foo(Integer) где Integer мож…
22 дек '14 в 22:05
3
ответа
Преобразовать значение в опции в другой тип
Я пытаюсь сделать что-то, что должно иметь прямой синтаксис / функцию в Scala. Я просто не знаю что это. Я пытаюсь преобразовать содержащееся в нем значение параметра (если оно не None) в другой тип. Просто я хочу знать, каким был бы код, если бы я …
05 фев '14 в 19:06
2
ответа
Рекомендации для вложенных полей опций Scala?
У меня есть несколько вложенных объектов, все они обернуты в тип опции Scala. В другом месте моего проекта мне приходится вызывать атрибут, который имеет глубину около 5 уровней (некоторые из которых являются списками), каждый раз делая вызов .get, …
20 фев '15 в 10:07
5
ответов
Scala: заставить неявное преобразование A->B работать для Option[A] -> Option[B]
Я пытаюсь написать функцию, которая повторно использует неявные преобразования, которые у меня есть для Объекта A -> Объекта B, когда они обернуты в Option общим способом, чтобы преобразования Option[A] -> Option[B] также Работа. То, что я придумал,…
11 янв '12 в 17:28
3
ответа
Лучше вернуть None или выдать исключение при получении URL?
У меня есть вспомогательный метод Scala, который в настоящее время пытается извлечь URL-адрес и вернуть Option[String] с HTML-кодом этой веб-страницы. Если есть какие-либо исключения (неправильно сформированный URL, тайм-аут чтения и т. Д.) Или если…
31 июл '11 в 17:24
3
ответа
"Или"- два варианта в Scala?
Я хочу сделать что-то вроде этого: def or[A](x: Option[A], y: Option[A]) = x match { case None => y case _ => x } Какой идиоматический способ сделать это? Лучшее, что я могу придумать, было Seq(x, y).flatten.headOption
18 апр '14 в 21:13
8
ответов
Идиоматическая скала для получения одной опции из двух опций и выдачи исключения, если две доступны
val one: Option[Int] = None val two = Some(2) Option(one.getOrElse(two.getOrElse(null))) // Gives me Some(2) which I want val one = Some(1) val two = None Option(one.getOrElse(two.getOrElse(null))) // Gives me Some(1) which I want val one: Option[In…
26 сен '14 в 17:40
5
ответов
Scala: карта с двумя или более опциями
По сути, я ищу самый похожий на скалы способ сделать следующее: def sum(value1: Option[Int], value2: Option[Int]): Option[Int] = if(value1.isDefined && value2.isDefined) Some(value1.get + value2.get) else if(value1.isDefined && value…
29 апр '11 в 13:14
1
ответ
Как уступить None в понимании, если какое-то условие соответствует
Я экспериментирую для понимания и написал следующий код: object Main extends App { val resultOption: Option[Int] = for{ i1 <- opt1 i2 <- opt2 } yield { if(i1 + i2 > 10) null.asInstanceOf[Int] else i1 + i2 } println(resultOption) // <----…
12 июн '18 в 15:01
1
ответ
ClassCastException при создании актера для понимания
У меня есть актер, который создает детей актеров типа Child1 в этом примере. Child1 Конструктор принимает две строки, которые извлекаются из переменных, которые находятся в SomeTrait это смешано в SomeActor isntance. trait SuperTrait { lazy val str1…
30 июн '14 в 15:03