zoukankan      html  css  js  c++  java
  • Swift之字符串的介绍

    字符串在任何的开发中使用都是非常频繁的

    OC和Swift中字符串的区别

    • 在OC中字符串类型时NSString,在Swift中字符串类型是String
    • OC中字符串@"",Swift中字符串""

    使用 String 的原因

    • String 是一个结构体,性能更高
    • NSString 是一个 OC 对象,性能略差
    • String 支持直接遍历
    • Swift 提供了 String 和 NSString 之间的无缝转换

    字符的定义

    • 定义不可变字符串
    let str = "hello Objective-C"
    
    • 定义可变字符串
    var str = "hello Swift"
    

    字符串的使用

    • 获取字符串的长度
    • 获取字符集合,再获取集合的count属性
    let count = str.characters.count
    

    遍历字符串

    // 字符串遍历
    var str = "Hello, Swift"
    for c in str.characters {
        print(c)
    }
    

    字符串拼接

    • 两个字符串的拼接
    let str1 = "Hello"
    let str2 = "World"
    let str3 = str1 + str2
    
    • 字符串和其他数据类型的拼接
    let name = "cj"
    let age = 18
    let info = "my name is (name), age is (age)"
    
    • 字符串的格式化
    • 比如时间:03:04
    let min = 3
    let second = 4
    let time = String(format: "%02d:%02d", arguments: [min, second])
    

    字符串的截取

    • Swift中提供了特殊的截取方式
    • 该方式非常麻烦
    • Index创建较为麻烦
    • 简单的方式是将String转成NSString来使用
    • 在标识符后加:as NSString即可
    let myStr = "www.1314chenjan.com"
    var subStr = (myStr as NSString).substringFromIndex(4)
    subStr = (myStr as NSString).substringToIndex(3)
    subStr = (myStr as NSString).substringWithRange(NSRange(location: 4, length: 5))
    
    • swift截取方式
    // 1.定义字符串
    let str = "www.1314chenjan.com"
    // 2.截取开始位置
    let fromIndex = str.startIndex.advancedBy(3)
    let header = str.substringFromIndex(fromIndex)
    // 3.截取结束位置
    let toIndex = str.endIndex.advancedBy(-3)
    let footer = str.substringToIndex(toIndex)
    // 4.截取中间的字符串
    let range = Range(start: str.startIndex.advancedBy(4), end: str.endIndex.advancedBy(-4))
    let middle = str.substringWithRange(range)
    
  • 相关阅读:
    Jaxb2 实现JavaBean与xml互转
    标准输入与标准输出
    linux 一行一行的读取文件
    linux $* 和$@ if [ ](字符串比较)
    scala 学习(三)——Array和ArrayBuffer
    Shell编程(六)awk工具
    Shell编程(五)脚本语法
    Shell编程(四)Shell变量
    Shell编程(三)Shell特性
    Shell编程(一)概览
  • 原文地址:https://www.cnblogs.com/chenjianjian/p/5447848.html
Copyright © 2011-2022 走看看