zoukankan      html  css  js  c++  java
  • Swift-字符串

    1、字符串的遍历

      //NSString 不支持一下字符串的遍历

            let str = "我要飞的更高"

            for c in str.characters{

                print(c)

            }

    2、字符串的长度

      let str = "hello world你好"

            //1> 返回指定编码的对应的字节数量

            //UTF8的编码(0-4个)每个汉字是3个字节

            print(str.lengthOfBytesUsingEncoding(NSUTF8StringEncoding))

            // print(str.lengthOfBytes(using: .utf8)) Switf 3.0

            //2>字符的长度 - 返回字符的个数

            print(str.characters.count)

           //3>使用NSString 中转

            /*

            str as NSString

            OC 的写法 (类型*)对象

            Swift 中可以使用 '值'as 类型  类型转换

            */

            let ocStr = str as NSString

            print(ocStr.length)

    3、字符串的拼接

        let name = "老王"

             let age = 18

              let title: String? = "BOSS"

            //(变量/常量)(变量/常量)

            //拼接字符串需要注意 可选项Optional

            let str = "(name)(age)(title ?? "")"

            print(str)

    4、格式化

        let h = 8

            let m = 9

            let s = 6

            //使用格式字符串格式化

            let dateStr1 = String(format: "%02d:%02d:%02d", h, m, s)

            print(dateStr1)

    5、字符串的子串

       //建议:一般使用 NSString 作为中转,因为Swift取子串的方法一直在优化

            let str = "我们一起去飞"       

       //1、NSString

            let ocStr = str as NSString

            let s1 = ocStr.substringWithRange(NSMakeRange(2,3))

            print(s1)

      //2、String 的方法

            //let r = 0..<5

            //Swift 2.0

            //str.substringWithRange(<aRange: Range<Index>>)

            //Swift 3.0

            //str.substring(with: Range<Index>)

            

            //startIndex position = 0

            print(str.startIndex)

            //endIndex position = str.length

            print(str.endIndex)

      

      根据给出字符串的长度截取子串

        let s2 = str.substringFromIndex("我们".endIndex)

            print(s2)

            let s3 = str.substringFromIndex("adc".endIndex)

            print(s3)

       //取字符串的范围

            guard let range = str.rangeOfString("一起")else {

                print("没找到字符串")

                return

            }

            //一定找到的范围

            print(range)

            print(str.substringWithRange(range))

  • 相关阅读:
    Android不规则瀑布流照片墙的实现+LruCache算法
    嵌入式OS入门笔记-以RTX为案例:六.RTX的任务调度
    Oracle backgroup processes
    Android中数据库的操作流程详解
    Dreamweaver PHP代码护眼配色方案
    Twitter 新一代流处理利器——Heron 论文笔记之Heron架构
    Docker简单介绍
    C#下使用GDAL
    Android:实现仿 美团/淘宝 多级分类菜单效果
    KVC在定义Model类中的妙用
  • 原文地址:https://www.cnblogs.com/jiang-xiao-yan/p/6382503.html
Copyright © 2011-2022 走看看