Вопросы с тегом «null-coalescing-operator»

Оператор объединения с нулевым значением (?? в PHP 7) используется для определения значения по умолчанию для типов значений, допускающих значение NULL, или ссылочных типов. Он возвращает левый операнд, если операнд не равен нулю; в противном случае возвращается правильный операнд.

1381
Есть ли в JavaScript оператор «нулевого слияния»?

Есть ли в Javascript пустой оператор слияния? Например, в C # я могу сделать это: String someString = null; var whatIWant = someString ?? "Cookies!"; Лучшее приближение, которое я могу выяснить для Javascript, это использование условного оператора: var someString = null; var whatIWant = someString...

542
Любопытный нуль-коалесцирующий оператор нестандартного поведения неявного преобразования

Примечание: похоже, это было исправлено в Roslyn Этот вопрос возник при написании моего ответа на этот , который говорит об ассоциативности нуль-сливающегося оператора . Напомним, что идея оператора слияния нулей состоит в том, что выражение вида x ?? y сначала оценивает x, потом: Если значение...

342
Тернарный оператор PHP против оператора объединения нулей

Может кто-нибудь объяснить разницу между кратким оператором shorthand ( ?:) и оператором объединения нулей ( ??) в PHP? Когда они ведут себя по-разному и когда одинаково (если это вообще происходит)? $a ?: $b VS. $a ??...

302
Есть ли в Python эквивалент нуль-сливающегося оператора C #?

В C # есть оператор слияния нуля (записанный как ??), который позволяет легко (коротко) проверять нуль во время присваивания: string s = null; var other = s ?? "some default value"; Есть ли эквивалент в Python? Я знаю, что я могу сделать: s = None other = s if s else "some default value" Но есть ли...

165
Уникальные способы использования оператора Null Coalescing [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 2 месяца назад . Улучшить этот вопрос Я знаю, что стандартным способом использования...

165
?? Объединить для пустой строки?

Что-то, что я делаю все больше и больше, проверяет строку на пустое (как в ""или ноль) и условный оператор. Текущий пример: s.SiteNumber.IsNullOrEmpty() ? "No Number" : s.SiteNumber; Это просто метод расширения, он эквивалентен: string.IsNullOrEmpty(s.SiteNumber) ? "No Number" : s.SiteNumber; Так...

131
Функция объединения для PHP?

Многие языки программирования имеют функцию Coalesce (возвращает первое значение , не NULL, пример ). К сожалению, в 2009 году PHP этого не сделал. Что было бы хорошим способом реализовать его в PHP, пока сам PHP не получит функцию...

122
Как правильно проверить нулевые значения?

Мне нравится оператор объединения с нулевым значением, потому что он упрощает присвоение значения по умолчанию для типов, допускающих значение NULL. int y = x ?? -1; Это здорово, за исключением случаев, когда мне нужно сделать что-нибудь простое с x. Например, если я хочу проверить Session, мне...

93
Есть ли «противоположность» нулевому оператору объединения? (… На любом языке?)

нулевое объединение примерно означает return x, unless it is null, in which case return y Мне часто нужно return null if x is null, otherwise return x.y я могу использовать return x == null ? null : x.y; Неплохо, но то, nullчто посередине, меня всегда беспокоит - кажется лишним. Я бы предпочел...

90
лямбда-выражение дерева не может содержать нулевой оператор распространения

Вопрос : строка price = co?.price ?? 0,в следующем коде дает мне указанную выше ошибку. но если я удалю ?из co.?него все работает нормально. Я пытался следовать этому примеру MSDN , где они используют ?на линии select new { person.FirstName, PetName = subpet?.Name ?? String.Empty };Таким образом,...

85
Что ?[]? синтаксис в C #?

Пока я изучал делегат, который на самом деле является абстрактным классом Delegate.cs, я увидел следующий метод, в котором я не понимаю Почему возвращаемое значение использует, ?хотя это уже ссылочный ( класс ) тип ?[]? смысл по параметру Могли бы вы объяснить? public static Delegate?...