Вопросы с тегом «optional»

Неизменяемый тип, который может содержать значение или ссылку. Каждый экземпляр этого типа либо содержит ненулевое значение или ссылку, либо ничего не содержит (в этом случае мы говорим, что ссылка «отсутствует»; никогда не говорится, что она «содержит null»).


8
Swift: охранник пусть против, если пусть
Я читал о Optionals в Swift и видел примеры, в которых if letон используется, чтобы проверить, содержит ли Optional значение, и, если это так, сделайте что-нибудь с развернутым значением. Однако я видел, что в Swift 2.0 в guard letосновном используется ключевое слово . Интересно, было ли if letудалено из Swift …

9
Необязательный параметр по умолчанию в функции Swift
Когда я установил firstThing значение по умолчанию, nilэто будет работать, без значения по умолчанию nilя получаю сообщение об ошибке при вызове функции. Печатая, Int?я подумал, что он стал необязательным со значением по умолчанию nil, я прав? И если да, то почему не работает без = nil? func test(firstThing: Int? = …
109 swift  function  optional 

6
Почему java.util.Optional не является сериализуемым, как сериализовать объект с такими полями
Класс Enum является сериализуемым, поэтому нет проблем с сериализацией объекта с помощью перечислений. Другой случай - когда у класса есть поля класса java.util.Optional. В этом случае выдается следующее исключение: java.io.NotSerializableException: java.util.Optional Как бороться с такими классами, как их сериализовать? Можно ли отправлять такие объекты в Remote EJB или через RMI? …

1
Быстрые переменные украшения с помощью «?» (вопросительный знак) и «!» (восклицательный знак)
Я понимаю, что в Swift все переменные должны быть установлены со значением, и что, используя дополнительные параметры, мы можем установить переменную, которая будет установлена nilизначально. Я не понимаю, что происходит при установке переменной с помощью !, потому что у меня создалось впечатление, что это "разворачивает" значение из необязательного. Я думал, …
107 swift  optional 


5
Правильное использование Optional.ifPresent ()
Я пытаюсь понять ifPresent() метод OptionalAPI в Java 8. У меня простая логика: Optional<User> user=... user.ifPresent(doSomethingWithUser(user.get())); Но это приводит к ошибке компиляции: ifPresent(java.util.functionError:(186, 74) java: 'void' type not allowed here) Конечно, я могу сделать что-то вроде этого: if(user.isPresent()) { doSomethingWithUser(user.get()); } Но это в точности как захламленный nullчек. Если я …
99 java  lambda  java-8  optional 

9
Опции понижающего преобразования в Swift: как? Типа, или как! Тип?
Учитывая следующее в Swift: var optionalString: String? let dict = NSDictionary() В чем практическая разница между следующими двумя утверждениями: optionalString = dict.objectForKey("SomeKey") as? String против optionalString = dict.objectForKey("SomeKey") as! String?

3
Swift: проверка на необязательное значение в случае переключателя
Как в Swift я могу написать регистр в операторе switch, который проверяет переключаемое значение на содержание необязательного , пропуская регистр, если необязательный параметр содержит nil? Вот как я себе это представляю: let someValue = 5 let someOptional: Int? = nil switch someValue { case someOptional: // someOptional is non-nil, and …

5
Почему findFirst () выдает исключение NullPointerException, если первый найденный элемент имеет значение NULL?
Почему это бросает java.lang.NullPointerException? List<String> strings = new ArrayList<>(); strings.add(null); strings.add("test"); String firstString = strings.stream() .findFirst() // Exception thrown here .orElse("StringWhenListIsEmpty"); //.orElse(null); // Changing the `orElse()` to avoid ambiguity Первый элемент в stringsIS null, который является вполне приемлемым значением. Более того, findFirst()возвращает Optional , что имеет еще больше смысла для …

6
Проверка значения необязательного Bool
Когда я хочу проверить, истинно ли значение Optional Bool, это не сработает: var boolean : Bool? = false if boolean{ } Это приводит к этой ошибке: Необязательный тип @IvalueBool? не может использоваться как логическое; вместо этого проверьте '! = nil' Я не хочу проверять ноль; Я хочу проверить, истинно ли …

4
'Optional.get ()' без проверки 'isPresent ()'
У меня есть следующий код поиска на Java: return getTableViewController().getMe().getColumns().stream().filter($->Database.equalsColumnName($.getId(), columnId)).findFirst().get(); Я хотел найти столбец по имени и вернуть первый найденный. Я так понимаю, бывает, что ничего не найдено и его нужно обрабатывать, но как? Это то, чего он хочет от этой ругани: 'Optional.get()' without 'isPresent()' check ? Как исправить? …

8
Как решить «Интерполяция строк дает описание отладки для необязательного значения; вы хотели сделать это явным? " в бета-версии Xcode 8.3?
Начиная с бета-версии 8.3, огромное количество предупреждений: «Строковая интерполяция дает описание отладки для необязательного значения; вы хотели сделать это явным?» появился в моем коде. Например, предупреждение появляется в следующей ситуации, когда параметры могут привести к нулю: let msg = "*** Error \(options["taskDescription"]): cannot load \(sUrl) \(error)" Как было разработано ранее, …

4
Обязательные и необязательные аргументы с использованием параметров программы библиотеки Boost
Я использую библиотеку параметров программы Boost для анализа аргументов командной строки. У меня следующие требования: После предоставления «справки» все остальные параметры являются необязательными; Если «помощь» не предоставляется, требуются все остальные варианты. Как я могу с этим справиться? Вот мой код, обрабатывающий это, и я обнаружил, что он очень избыточен, и …

2
Как инициализировать вектор пар C ++ 17 с необязательным элементом
В C ++ 17, как вы объявляете и инициализируете вектор пар (или кортежей) с необязательным элементом? std::vector<std::pair<int, optional<bool> > > vec1 = { {1, true}, {2, false}, {3, nullptr}}; У меня есть пара, где второй элемент может быть нулевым / необязательным.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.