zoukankan      html  css  js  c++  java
  • Welcom to Swift

    1、第一个程序
    
     
    
    import Foundation
    
     
    
    println(“hello world”)
    
     
    
    2、常用数据类型
    
    int/UInt/Double/Float/Bool/String/Array/Dictionary/元组(tuple)/可选类型(Optional)
    
     
    
    3、变量常量必须设初始值
    
    变量    var myName = “zhangsan”
    
    常量    let myPhone = “18336070719”
    
     
    
    4、整型变现形式
    
    二进制: 前缀为0b
    
    八进制:前缀为0o
    
    十六进制:前缀为0x 
    
     
    
    5、类型别名
    
    使用typealias定义,类似与typedef
    
     
    
    typealias NSInteger = Int
    
    var value:NSInteger = 12 
    
     
    
    6、swift不支持隐式类型转换。需要显示类型转换 String(23):把23转换成字符串
    
    字符格式化(items) 
    
    let apples = 3
    
    let applesSummary = “I hava (apples) apples”
    
     
    
    7、数组 
    
    let emtptArray Array = [ ]
    
    插入:
    
    往数组里面加元素(末尾)  emtptArray.append(“pingguo”);
    
    插入emptpt.insert(“pingguo”,atIndex:3);
    
    emtptArrayi +=“pingguo “
    
     
    
    emtptArray.capacity   //数组的容量2的次方,值大于等于emtptArray.count,
    
    修改:
    
    array[1] = “天空”
    
    array[4…7] = [“bananas”,”apple”]   //把下标为4,5,6,7的元素替换 
    
     删除:
    
    array.removeLast()  //删除最后一个元素
    
     
    
    array.removeAtIndex(4)   
    
     
    
    array.removeAll()   //删除所有
    
     新建数组
    
    var array = Array(count:3,repeateValue:2.5);
    
     遍历:
    
    1、for item in array{
    
        println(item)
    
    } 
    
     2、for(index,value) in enumerate(array)
    
    {
    
      println(“Time (index+1):(value)")
    
    }
    
    8、字典
    
     
    
    1、let emptyDic1 = [:]   //声明一个空的字典
    
     
    
    2、let empty2 = Dictionary<String,Float>()   //确定key和value的类型
    
     
    
    3、var ariport = [“TYP”:”Tkkyo”,”Dub”:”Bublin"]
    
     
    
     删除
    
    airports[“THO”] = nil
    
     
    
    airports.removeValueForKey[“TYP”]
    
     遍历
    
    for key in airports.keys
    
    {//遍历所有的keys
    
    }
    
     
    
    for(key,value) in airport {
    
       println("(key):(value)")
    
    }
    
     
    
    9元组
    
    可以将任意数据类型组装成一个元素
    
    元组在作为函数返回值的时候特别适用
    
     let (x,y) = (1,2)
    
    let http404Error = (404,”Not Found”)   //定义一个由Int 和String做成的元组
    
     
    
     let gtt = (status:300,desc:”OK”)
    
     
    
     
    
    可选类型(Optional)
    
    1、nil不能用于非可选类型
    
    2、如果代码中的常量或者变量需要适配值不存在,务必将她声明称可选类型
    
    3、如果定义的可选类型的对象不提供默认值,该对象将自动设置为nil
    
    这个值要么存在,并且等于x;要么就不存在
    
     
    
    let name = "zhanggui"
    
    let number = "124"
    
     
    
    let ss:Int? = name.toInt()
    
    println(ss)
    
     
    
     
    
    10?使用场景
    
    1、声明Optional值变量
    
    2、用在Optional操作中,用来判断是否响应后面的操作
    
     
    
     
    
    11解包:用!(1、强制对可选量进行解包;2、声明隐式解包可选类型时,用于类中的属性)
    
     
    
    //解包方法一
    
    var strValue:String? = "This is my Book"
    
    println(strValue!)   //解包,确定strValue的值一定存在,不需要每次都验证他的值是否存在
    
     
    
     
    
    let stringValue = strValue!.hashValue   //必须解包才能获取可选量的属性或者方法
    
    println(stringValue)
    
    //解包方法二  选择绑定
    
    if let sValue = strValue
    
    {
    
        let stringValue = sValue.hashValue
    
        println(stringValue)
    
     
    
    }
    
    //隐式解包可选类型,在定义的时加!
    
    let assumedString:String! = "A apple"
    
    println(assumedString)
    
    println(assumedString.hashValue)
    
  • 相关阅读:
    Jquery清除style样式
    合并单元格式
    SQL根据下标,返回split分割后字符串
    js功能比较全面的yyyyMMdd格式的日期验证正则
    DataTable to Json
    List<T>下的Find,FindAll等条件过滤函数的使用方法
    获取iframe内部DOM对象
    PowerDesigner取消Name与Code同步
    再次回归
    最近遇到一个比较有意思的题目
  • 原文地址:https://www.cnblogs.com/zhanggui/p/3851138.html
Copyright © 2011-2022 走看看