• Swift语言指南(四)--类型安全和类型推断


    Swift是一门类型安全语言,类型安全语言需要代码里值的类型非常明确。如果你的代码中有部分值需要String类型,你就不能错误地传递Int

    鉴于Swift的类型安全,编译代码时,Swift会执行类型检查并将任何类型不匹配的地方标记为错误,使你在开发当中尽可能早的捕获并修正错误。

    类型检查有助于你在操作不同值的类型时避免犯错。但这并不意味着你必须在声明每一个常量或变量时去检查类型,如果你不检查所需值的类型,Swift会执行类型推断来计算出相应地类型。

    类型推断让编译器在编译代码时,根据你提供的值,自动推测出特定表达式的类型。

    基于类型推断,Swift对类型声明的需要远比C或Objective-C语言要少得多。常量与变量仍然有明确的类型,但明确指定类型的工作已经由编译器代你完成。

    当你声明一个常量或变量并赋予一个初始值时,类型判断尤其有用。通常通过在声明时赋字面值literal value,或称“字面量literal)实现(类型判断)。(字面值指直接出现在源代码中的值,如下例中的 423.14159

    比如说,你给一个新的常量赋一个字面值42但未指定其类型时,Swift会推断你想要一个Int型的常量,因为你初始化时提供的数字像一个整数:

    1 let meaningOfLife = 42
    2 // meaningOfLife 被推断为Int

    同样的,如果不为浮点数字面量指定类型时,Swift会推断你想要创建一个Double型:

    1 let pi = 3.14159
    2 // pi 被推断为Double

    Swift在推断浮点数数字时通常会选用Double(而不是Float)。

    如果你在表达式中结合了整数和浮点数字面量,Swift会根据上下文中推断返回Double型:

    1 let anotherPi = 3 + 0.14159
    2 // anotherPi 会被推断为Double

    上例中,字面值3自身不属于某个类型,也未明确指定类型,根据当前附加部分的浮点数字面量推断并适当地输出Double型。

    谢谢,Swifter-QQ群:362232993,同好者进~ 

    Fork:https://github.com/Joejo/Swift-lesson-for-chinese

  • 相关阅读:
    dom操作
    今天学到的知识点
    3.26随笔
    dom操作
    Ajax
    JSP、EL、JSTL
    Cookie和Session
    HttpServletResponse
    Servlet
    tomcat
  • 原文地址:https://www.cnblogs.com/joejs/p/3775929.html
Copyright © 2020-2023  润新知