Swift_3.0_初级篇04_变量_常量

我们创建一些方法:
func demo () {
    //1. 定义变量 var, 定义之后,可以修改
    //2. 常量 let, 定义之后,不能修改
     
        /*
        
         let x = 10
         x = 20  //这样写会提醒报错
         
         */
      
        //自动推导,变量/常量的类型会根据右侧的代码执行的结果,推导对应的类型
        // 热键 option + click/鼠标左键点击 变量名/常量名
        //Int 整数  // (OC中是NSInteger)
        //小数 是 Double 精度高 (OC 中的是 CGFloat)
        
        let y = 10
        let v = UIView()
        print(y)
        print(v)
     
    }

func demo1() {
        //在Swift 中 对类型要求异常严格 
        // **任何不同类型的数据之间,不允许直接运算**
        // 不会做任何的隐式转换, 所有的类型确定,都要有程序员负责
        
        let x = 10
        let y = 10.5
        print(x + y) //这样写会报错,类型不相同
        
        // 1. 将 y 转化成 Int 通过 Int() 结构体
        // OC 中的写法 (int)y => 类型强转
        print( x + Int(y))
        // 2. 将 x 转化成 Double 通过 Double() 结构体
        print( Double (x) + y)
        //在 Swift 中 结构体的使用频率非常高 
        //包括  基本的数据类型 都是用结构体
        //不存在 基本的数据类型 都是 结构体
  
    }
func demo2()  {
        
        /* 如果 需要 指定变量/常量的的 类型,
           也可指直接使用 let x : 类型 = 值
           提示: 在 Swift 开发中,极少使用直接类型,通常都是自动推导!!!
        */
        let x:Double = 10
        let y = 10.5
        //let z: Double = "abc" //报错
        print( x + y)
        
    }

补充:
override func viewDidLoad() {
        super.viewDidLoad()

        //Swift 方法的调用
        demo()
        demo1()

        /*
          // 关于 Var 和 Let 的选择
          // 一般的 不可变的 是比较安全的 ,在需要变化的时候 在改成Var
        var x = 10
        let y = 20
        print(x + y)
        // Variable 'x' was never mutated; consider changing to 'let' constant
        // 变量的 X 的值 没有被修改建议改为 let
        */
        
        let v = UIView()
        //这里用 let 是因为 这里修改的 是v 的属性,并没有修改 v 的指针 地址!!!
        v.backgroundColor = UIColor.red
    
    }


你可能感兴趣的:(Swift_3.0_初级篇04_变量_常量)