Swift: строки, кортежи, алиасы типов, логические значения

Строки в Swift представлены типом String, который, в свою очередь, представляет собой коллекцию значений типа Character. Строковый литерал - это фиксированная последовательность текстовых символов, окруженная парой двойных кавычек (""). Можно узнать пустое ли String значение, через его Boolean свойство isEmpty. Тип String представляет собой коллекцию значений Character.

var emptyString = ""	// пустая строка
var emptyString2 = String() // пустая строка
var myString = "Hello world!"

if emptyString.isEmpty {
  println("строка пуста!")
}

// можно легко добавить к Hello worl строку
myString += " How are you?"

// так можно задать константу типа Character
let myChar: Character = "P"
  


В Swift также имеется логический тип Bool. Этот тип может принимать только два значения true и false:

let myFlag = true
  


Логические значения часто используются с условными операторами, например с оператором if:

if myFlag {
   println("Its very good!")
} else {
   println("Khm, I made a mistake somewhere.")
}
  



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

let myParams = (7, "my string", 7.85)

// можно разложить содержимое кортежа на отдельные константы и переменные
let (miInt, myStr, myFloat) = myParams
println("The let is \(miInt)") // выведет "The let is 7"

// можно игнорировать части кортежа с помощью символа подчеркивания (_)
let (miInt, _) = myParams
println("The let is \(miInt)") // выведет "The let is 7"

// можно задавать имена элементам кортежа во время объявления:
let myParams = (miInt: 7, myStr: "my string", myFloat: 7.85)
println("The let is \(myParams.miInt)") // выведет "The let is 7"
  


Алиасы типов задают альтернативное имя для существующего типа. Можно задать алиас типа с помощью ключевого слова typealias. Алиасы типов полезны, когда вы хотите обратиться к существующему типу по имени, который больше подходит по контексту, например, когда вы работаете с данными определенного размера из внешнего источника. После того как вы один раз задали алиас типа, вы можете использовать алиас везде, где вы хотели бы его использовать.