Как проверить несколько значений в отрицательном выражении с необязательной привязкой? - PullRequest
0 голосов
/ 08 декабря 2018

Я хочу проверить, все ли две необязательные переменные имеют значение null.например, в C,

int n1 = 1;
int n2 = 2;
if( n1!=0 && n2!=0 ) {
     //  do something.
}

Есть ли способы сделать это в Swift?спасибо.

Ответы [ 3 ]

0 голосов
/ 08 декабря 2018

Просто используйте оператор &&:

// here are the optional variables:
var a: Int? = nil
var b: Int? = nil

if a == nil && b == nil {
    // this will only run if both a and b are nil
}
0 голосов
/ 08 декабря 2018

Вы можете проверить, являются ли два дополнительных параметра nil, сравнив их с nil

let n1: Int? = nil
let n2: Int? = nil
if n1 == nil, n2 == nil {
    print("Nil all the way")
}

Разделение условий запятой эквивалентно использованию &&.

Здесьальтернатива с использованием кортежей:

if (n1, n2) == (nil, nil) {
    print("Nil all the way")
}
0 голосов
/ 08 декабря 2018

То, что вы называете необязательное связывание , на самом деле просто , если оператор с несколькими условиями. Необязательное связывание используется, когда вы хотите определить константу / переменную из константы / переменной, которая может быть nil.Когда нет, код внутри, если оператор выполняется.

Но вам нужно определить два значения с необязательным типом.Это можно сделать с вопросительным знаком Type?, а затем проверить, не являются ли оба значения nil.

Ваш код в Swift:

let n1: Int? = 1
let n2: Int? = 2
if n1 == nil && n2 == nil {
    //  do something.
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...