Swift4:字符串操作,數(shù)組操作

var str = "Hello, playground"
取前3個(gè)字符
str.prefix(3) // Hel
取后3個(gè)字符
str.suffix(3) // und
遍歷字符串
var swift = "Swift 很有趣"
for (index , value) in swift.enumerated(){
    print("index is \(index), value is \(value)")
}
插入字符串
if let index = swift.index(of: " "){
    swift.insert(contentsOf: " 3.0", at: index) // Swift 3.0 很有趣
}
替換字符串
if let index = swift.index(of: "很"){
    swift.replaceSubrange(index ..< swift.endIndex, with: "is interesting!") // Swift 3.0 is interesting!
}
字符串切片,獲取interesting
swift.suffix(12).dropLast() // interesting
字符串切片,按照空格分隔
swift.split(separator: " ") // ["Swift", "3.0", "is", "interesting!"]
奇數(shù)位切割,只取偶數(shù)
var i = 0
let singles = swift.split { _ in
    if i > 0 {
        i = 0
        return true
    }else{
        i = 1
        return false
    }
    return false
}
singles.map(String.init) // ["S", "i", "t", "3", "0", "i", " ", "n", "e", "e", "t", "n", "!"]
Tuple
let success = ("1", "2")
let failed = ("2.0.9", "3.0.0")
success.0 < failed.0
forin
for _ in 0 ..< 5{
    print(i) // 0,1,2,3,4
}

數(shù)組
let array = [1,2,3,4,5] // 不可變數(shù)組
var array = [1,2,3,4,5] // 可變數(shù)組
每個(gè)元素相乘
// 每個(gè)元素相乘
let constSquares = array.map{$0 * $0}
取得數(shù)組里面最小的元素
constSquares.min() // 1
取得數(shù)組里最大的元素
constSquares.max() // 25
排序
constSquares.sorted(by:>)  // 從大到小排序 25,16,9,4,1
constSquares.sorted(by:<) ,constSquares.sorted()// 從小到大排序 1,4,9,16,25
篩選滿足條件的元素
// 選出偶數(shù)
let even = constSquares.filter{$0 % 2 == 0} // 4,16

//  filter語義的常用操作是判斷數(shù)組中是否存在滿足條件的元素
let contain = array.filter {$0 % 2 == 0}.count > 0 // true
遍歷數(shù)組
// 遍歷數(shù)組的每一個(gè)元素
constSquares.forEach{
    print($0) // 1,4,9,16,25
}
contains(判斷數(shù)組是否包含滿足條件的元素)
//  contains的一個(gè)好處就是只要遇到滿足條件的元素,函數(shù)的執(zhí)行就終止了
array.contains{$0 % 2 == 0} // true(是否包含偶數(shù))
reduce
array.reduce(0, +) // 計(jì)算數(shù)組里的和 15
Map
map用于將每個(gè)數(shù)組元素通過某個(gè)方法進(jìn)行轉(zhuǎn)換。
Filter
filter用于選擇數(shù)組元素中滿足某種條件的元素。
Reduce
reduce方法把數(shù)組元素組合計(jì)算為一個(gè)值。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容