Der Zeichenfolgentyp ist als Sammlung von Zeichentypen definiert, die ein einzelnes Zeichen darstellen, und verfügt über Funktionen wie die Aufzählung von Zeichen und die Anzahl der Zeichen.
chapter4.swift
//StringIndex-Typ So stellen Sie die Position in der Zeichenfolge dar
let string = "abcdefghijelmnopqustuvwxyza"
let startString = string[string.startIndex]
print(startString)
//a
//Um den n-ten und letzten Index zu erhalten
let string2 = "abcdefghijelmnopqustuvwxyza"
let startString2 = string2.startIndex
let bIndex = string.index(startString2, offsetBy: 8)
print(bIndex)
let bb = string[bIndex]
print(bb)
//i
let endString = string2.endIndex
let cIndex = string.index(endString, offsetBy: -1)
let cc = string[cIndex]
print(cc)
//Ermitteln Sie die Anzahl der Elemente mithilfe der count-Eigenschaft
print(string2.count)
//27
Eine Datenstruktur, mit der Sie nacheinander aus einer Richtung auf die Elemente zugreifen können
Sammlung ist ein Konzept, das Sequenzen enthält Datenstruktur mit sequentiellem Zugriff aus einer Richtung und direktem Zugriff auf bestimmte Indexwerte
chapter4.swift
//forEach(_:)Sequentieller Zugriff auf Methodenelemente
let darray = [1,2,3,4,5,6,7]
var enumerated = [] as [Int]
darray.forEach ({ element in enumerated.append(element)
})
print(enumerated)
//[1, 2, 3, 4, 5, 6, 7]
//filterd(_:)Eingrenzen von Methodenelementen
let filtered = darray.filter ({ element in element % 2 == 0
})
print(filtered)
//[2, 4, 6]
//map(_:)Methodenelemente konvertieren
//Konvertieren Sie alle Elemente mit bestimmten Elementen
let double = darray.map({element in element * 2})
print(double)
//[2, 4, 6, 8, 10, 12, 14]
//In einen anderen Sequenztyp konvertieren Int → String
let farray = [1,2,3,4,5]
let converted = farray.map({element in String(element)})
print(converted)
//["1", "2", "3", "4", "5"]
//flatMap(_:)Konvertieren Sie Methodenelemente in Sequenzen und fügen Sie sie einer Sequenz hinzu
let sss = [1,2,3]
let ttt = sss.flatMap({value in [value, value * 2]})
print(ttt)
//compacttMap(_:)Konvertieren Sie Methodenelemente mithilfe einer Verarbeitung, die fehlschlagen kann
//Konvertiert alle Elemente mit einem bestimmten Prozess, ignoriert jedoch Werte, die nicht konvertiert werden können
let ggg = ["abc","123","kjg","456"]
let integers = ggg.compactMap({value in Int(value)})
print(integers)
//[123, 456]
//reduce(_:)Kombinieren Sie Methodenelemente zu einem Wert
let sarray = [1,2,3,4,5,6,7,8,9]
let sum = sarray.reduce(0, {result, element in result + element} )
print(sum)
//45
let concat = sarray.reduce("", {result, element in result + String(element)})
print(concat)
//123456789
//Erfassungsprotokoll Zugriff auf Elemente per Index
let warray = [1,2,2,3,2,1,2,3,4]
print(warray.count)
//9
print(warray.isEmpty)
//false
print(warray.first)
//Optional(1)
print(warray.last)
//Optional(4)
print(warray[3])
//3
Recommended Posts