美文网首页
OC与Swift的主要区别

OC与Swift的主要区别

作者: small_Sun | 来源:发表于2017-05-10 11:39 被阅读262次

swift与OC的主要区别就是语法区别,其他大抵相同.

区别1: swift中使用let定义常量,var定义变量.常量一经赋值,不可以进行修改,变量赋值后可更改.

     swift能够根据右边的代码,推倒出该变量的准确类型.

在实际开发中 使用常量多还是使用变量多?

使用常量,更加安全,不能够被修改,在需要对该对象进行修改的时候 在修改为var修饰区别.

2: swift对数据要求异常严格,不会做隐式转换;

 不同类型之间不能够直接计算需要手动转换类型,调用构造函数传递参数进行类型转换

区别3: swift中有一大特色,就是optional可选项,定义变量是,如果指定可选项,表示该变量可以有一个指定类型的值,也可以是nil;

声明: var a: Int?
'?'表示可选类型或者可选解包,
在调用可选类型的对象的属性或者方法的时候会使用可选解包

'!' 表示强行解包
获取可选类型的不为空的值
强行解包有风险,需要考虑是否安全
'??' 合并空选项

需要使用 () 提高优先级
如果有值就直接使用,如果没有就使用 ?? 后面设置的默认值
判断字符串 或者基本数据
区别4: swift中构造函数可以重载,就是init的括号内写一堆参数,OC中代替方式initWithXXX....

闭包

字符串
String 是结构体,更加轻量级,效率更高,支持遍历,可以和NSString 无缝的转换 as
NSString 集成自NSObject 是对象
字符串的合并
使用 +
使用String()传参数实例化字符串
() 转义字符串
格式化字符串 String(format:
字符串的截取
集合
let 声明的是不可变的集合,var 声明的是可变的集合
数组
[XXX]表示数组类型, XXX是某一个类
XXX 就能够实例化空数组
[元素1,元素2,....]
字典
[key1 : value1, key2 : value2,...]
[String : Any] 最常用的字典类型
闭包的基本格式
没有参数没有返回值 () -> ()
有参数没有返回值 (Int, Int) -> ()
有参数有返回值的 (Int, Int) -> Int
尾随闭包
当函数的最后一个参数是闭包的时候,函数的参数的 '()' 可提前关闭,如果函数只有闭包这一个参数, '()' 可以省略

相关文章

  • OC与swift的区别

    OC与Swift的区别一(文件结构) OC与Swift的区别一(常量、变量、运算符) OC与Swift的区别三(条...

  • OC与Swift的主要区别

    swift与OC的主要区别就是语法区别,其他大抵相同. 区别1: swift中使用let定义常量,var定义变量....

  • Swift语言基础

    //Swift 与 OC 的区别

  • swift5版本学习

    swift与OC区别:swift与OC1、Swift容易阅读,语法和文件结构简易化。2、Swift更易于维护,文件...

  • Swift--001:Swift编译 & SIL分析

    Swift与OC编译区别 swift与oc编译区别Swfit使用前端编译器swiftc,降级编译成IR,再通过后端...

  • Swift基础:一.Swift与OC区别:

    一.Swift与OC区别: 1.swift程序的入口是UIApplicationMain; 2.OC的类是...

  • ios面试

    一、OC与Swift的区别 1.swift是静态语言,有类型推断,OC是动态语言。2.swift面向协议编程,OC...

  • iOS面试

    # 一、OC与Swift的区别 1.swift是静态语言,有类型推断,OC是动态语言。 2.swift面向协议编程...

  • Swift与OC的区别

    Swift与OC的区别 1、基础篇 2、监听方法 OC 使用 @selector(actionName) Sw...

  • 【Swift】oc与Swift混编方法调用

    本文不介绍桥文件搭建和类的导入,只是阐述oc与swift函数方法的小区别 oc中有类方法与对象方法,调用swift...

网友评论

      本文标题:OC与Swift的主要区别

      本文链接:https://www.haomeiwen.com/subject/wmowtxtx.html