zoukankan      html  css  js  c++  java
  • Swift学习笔记(语法篇)-- 数据类型

    学任何一门编程语言,都是从"Hello,world!"开始的。Swift编程之旅也由此开始:

    print("Hello,World!")

    一 数据类型概括

    1.通用数据类型

    Swift提供的数据类型有:Int, Double, Float, Bool, String

    Swift提供的集合类型包括:Array, Dictionary, Set

    Swift提供的其他辅助类型: enum, Struct

    注意:1.以上类型,跟objective-c相比,都是值类型,而不是引用类型。在程序中使用以上任何一种类型,都考虑为值类型,存在内存的栈区,由系统自动管理内存,在赋值的时候都发生值拷贝操作。

         2.String,Array,Dictionary,Set,这些集合类型是否可变,与Objective-C不同,是根据定义这些类型的时候声明的是var还是let来决定,用var表示变量,意为可以进行改变,如果用let表示常量,意为不能变的集合

    Swift唯一提供的引用类型:Class

    注意:存在内存中的堆区,赋值时引起引用计数的改变,这部分内存由程序开发者管理,深刻理解引用计数原理,注意规避引用闭环的发生,避免造成内存泄漏。

    2.特有数据类型

    Swift提供特有类型:Tuple,元组,是一个临时存储数据的容器,若要存储的临时数据比较多,则考虑为Struct或Class更为合适

    还有可选类型:Int?, Double?, String?等,在任何一类型名称后面加?,就是可选类型。可选类型意为:有相应的值为x,或没有值,它等于nil

    二 类型声明

    let maximumNumberOfLoginAttempts = 3 //常量
    var currentLoginAttempt = 0 //变量
    与下面写法具有相等效果
    let maximumNumberOfLoginAttempts: Int = 3 //常量
    var currentLoginAttempt: Int = 0 //变量
    

    说明:Swift编辑器做类型推断,如果没有声明类型,可通过赋值判断当前类型。变量或常量名称遵从其他编程语言规则,以字母或下划线开头,包含字母、下划线、数字

    为提高代码通用性,苹果官方推荐的数据类型应用规范:

    整型:只要没有特殊要求,无论是无符号的UInt或者Int32等,一般都用Int来代替

    浮点型:涉及到UIKit视图计算的都用CGFloat,其他逻辑运算统一用Double

    字面值举例:

    let decimalInteger = 17    //十进制
    let binaryInteger = 0b10001 //二进制前面加0b
    let octalInteger = 0o21 //八进制前面加0o
    let hexadecimalInteger = 0x11 //十六进制前面加0x

    类型转换:

    let three = 3
    let pointOneFourOneFiveNine = 0.14159
    let pi = Double(three) + pointOneFourOneFiveNine
    
    let anotherPi = 3 + 0.14159
    

    不同类型的变量或常量在做运算时,要统一类型,但是字面值做运算时就不需要转换,因为编辑器自动把3推断为Double类型

      

  • 相关阅读:
    MINIX文件系统
    Cmd Markdown 语法
    asp.net mvc 4 json大数据异常 提示JSON字符长度超出限制的异常[转载]
    echart 拖拽
    搭建django开发环境
    Django 1.11.7+django_pyodbc_azure-1.11.0.0+pyodbc 连接mssql 数据库
    二、PyCharm 创建Django 第一个项目
    一、Django 安装
    python 连接各类主流数据库简单示例【转载】
    Python 3.6 连接mssql数据库(pymssql 方式)
  • 原文地址:https://www.cnblogs.com/csdnmc/p/6640168.html
Copyright © 2011-2022 走看看