Jaki jest prawidłowy sposób deklarowania pustej krotki?Swift: Deklaracja pustych krotek
- dla tablic:
var myArr : [String] = []
- Dla krotek:
var myTuple: (key: String, val: Int) =()
?
Czy istnieje właściwy sposób, aby to osiągnąć?
Jaki jest prawidłowy sposób deklarowania pustej krotki?Swift: Deklaracja pustych krotek
var myArr : [String] = []
var myTuple: (key: String, val: Int) =()
?Czy istnieje właściwy sposób, aby to osiągnąć?
Nie ma czegoś takiego jak pusta/niewypełniona wartość krotki. Należy pamiętać, że krotki nie są kolekcjami, takimi jak Array
lub Dictionary
. Krotki są typami strukturalnymi. Na przykład nie można wykonać iteracji przez krotkę z pętlą for. W twoim przykładzie myTuple
jest pojedynczą wartością, która ma zawierać String
i Int
.
Krotka jest jak nienazwanej konstrukcji na żądanie, takich jak następującej struktury, ale gdyby to było możliwe, aby była ona bezimienny:
struct MyStruct {
let key: String
let val: Int
}
Jeśli chcesz modelować brakujących wartości krotka, należy sprawiają, że typ całej krotki jest opcjonalny. Na przykład:
var myTuple: (key: String, val: Int)? = nil
Należy zauważyć, że istnieje * pusta krotka * - jest to typ zwracany funkcji, które nie zwracają niczego, tj. 'Void'. Zobacz https://developer.apple.com/reference/swift/void – Palimondo
dodanie wartości lub czyni go opcjonalnie –
można zainicjować go z „” i 0 –
@LeoDabus „Wartości magiczne” jak '„”' i '0' mogą być niebezpieczne, jeżeli te wartości są ważne . –