swift-字符和字符串

  • OC定义字符:

     char charValue = 'a';
    
  • swift定义字符:

      var charValue : Character = "a"
    
  • Unicode 国际标准的文本编码,他几乎可以表示所有国家的字符、
    OC可以存储ASCII字符,swift可以存ASCII+Unicode

     var charValue :Character = "🐶" //正确的
     var charValue2:Character = "小玉" //正确的
     var charValue3:Character = "玉" //错误的
    
     字符串是可以存很多字符的集合。
     OC:NSString * stringValue = @"小玉";
     swift:let stringValue:String = "小玉"
    
     区别:NSString/String  @""/""
    
     //String -> NSString
     let string:NSString = NSString(string: "dahuan")
    
     OC是以‘\0’为字符串结束:NSString * stringValue = @"aaaa\0bbbb";
     swift不是以'\0'结束:let stringValue:String = "aaaa\0bbbb"
    
  • 字符串的常用方法

    • 1、初始化空字符串

        let emptyString = ""
        let emptyString2 = String()
      
    • 2、遍历字符串

        let string2 = "康姐是我们的好朋友!"
        for a in string2.characters {
            print(a)
        }
      
    • 3、获取字符串的长度

        let count = string2.characters.count
        print(count)
      
    • 4、判断字符串是否为空

        let emptyStr = "1"
        if emptyStr.isEmpty {
            print("yes")
        }
      
    • 5、字符串的拼接

        let str1 = "康姐"
        let str2 = "是我们的好朋友!"
        let result = str1 + str2
        
        var str3 = "haha"
        str3 = str3 + str2
        print(str3)
      
    • 6、格式化字符串

        let intValue = 10
        let str4 = "爱情"
        let str5 = "\(intValue)、因为\(str4),不会悲伤"
        print(str5)
        
        //取小数后两位
        let pi = 3.1415
        let str6 = String(format: "%.2f", pi)
        print(str6)
      
    • 7、字符串比较

        //和C语言strcmp一样
        
        let str7 = "a"
        let str8 = "ab"
        
        if str7 > str8 {
            print(">")
        } else if str7 < str8 {
            print("<")
        }
      
    • 8、是否有前后缀

        let str9 = "www.baidu.com"
        if str9.hasPrefix("www") {
            print("yes")
        } else {
            print("no")
        }
        if str9.hasSuffix("cm") {
            print("yes")
        } else {
            print("no")
        }
      
    • 9、大小写

        let str10 = str9.uppercaseString
        let str11 = str9.lowercaseString
        
        print(str10)
      
    • 10、String转基本数据类型

        let str12 = "5.2吗"
        let num = Float(str12)
        print(num)
      
    • 11、截取字符串

        	let str13 = "康姐是我们的好朋友!"
        	//str13.startIndex  从0开始 Index不是int
        	let fromStr = str13.startIndex.advancedBy(2)
        	let toStr = str13.endIndex.advancedBy(-2)
        	let str14 = str13.substringFromIndex(toStr)
        	
        	
        	let range:Range <String.Index> = Range(start: fromStr, end: toStr)
        	let str15 = str13.substringWithRange(range)
        	
        	print(str15)
        	
        	let toStr1 = (str13 as NSString).substringToIndex(2);
        	print(toStr1)
        	
        	let range1 = NSRange(location: 2, length: 6)
        	
        	let toStr2 = (str13 as NSString).substringWithRange(range1)
        	print(toStr2)
      
posted @ 2016-05-19 11:24  往事亦如风  阅读(1144)  评论(0编辑  收藏  举报