一:认识swift

// 1.导入框架

//#import <UIKit/UIKit.h>
import UIKit // 2.定义一个标识符
// int a = 10;
// swift中定义标识符:必须制定该标识符是一个常量还是一个变量
// var(变量)/let(常量) 标识符的名称 : 标识符的类型 = 初始化值
var a : Int = ;
let b : Double = 3.14;
a = ;
// b = 3.11 错误写法 // 3.语句结束后可以不跟;
// 前提:一行只有一条语句,如果一行中有多条语句,则需要使用;分割
var m : Int =
let n : Double = 3.44 // 4.打印内容
// NSLog(@"%d", a)
print(a)
print("hello world") /** 总结:1:导入框架:oc导入框架:#import <UIKit/UIKit.h> swift导入框架:import UIKit
2:定义标识符:swift中定义标识符:必须先指定该标识符是一个常量还是一个变量:通用格式:var(变量)/let(常量) 标识符的名称 : 标识符的类型 = 初始化值
3:语句结束后可以不跟;前提:一行只有一条语句,可以不加分号,如果一行中有多条语句,则需要使用;分割
4:打印内容:print函数,基本数据类型:print(a) 字符串打印不加@,print("hello world") */
  • Playground是什么?

    • 从Xcode6开始出现(Swift开始出现)
    • 翻译为:操场/游乐场
    • 对于学习Swift基本语法非常方便
      • 所见即所得(快速查看结果)
      • 语法特性发生改变时,可以快速查看.
  • Swift最基本的语法变化
    • 导入框架 import UIKit
    • 定义标识符时,必须声明该标识符是变量还是常量
      • 声明标识符的格式:变量/常量关键字 名称 : 数据类型
    • 语句结束时不需要加;
      • 如果同一行有多个语句,则依然需要加
      • 但是不建议一行多条语句
    • Swift中的打印语句:print(打印的内容)

二:swift中的常量和变量

1:什么是常量和变量

  • 在Swift中规定:在定义一个标识符时必须明确说明该标识符是一个常量还是变量
  • 使用let来定义常量,定义之后不可以修改
  • 使用var来定义变量,定义之后可以修改2:

2:常量和变量的基本使用

import UIKit

let a : Int = 10
// 错误写法,当一个字段定义为常量时是不可以修改的
// a = 20 var b : Int = 20
// 因为b定义为变量,因此是可以修改的
b = 30

3:常量和变量的使用注意:

  • 注意:
    • 在真实使用过程中,建议先定义常量,如果需要修改再修改为变量(更加安全)
    • 是指向的对象不可以再进行修改(也就是内存地址不可以修改).但是可以通过指针获得对象后,修改对象内部的属性
    • // 注意:声明为常量不可以修改的意思是指针不可以再指向其他对象.但是可以通过指针拿到对象,修改其中的属性
      // view : UIView = [[UIView alloc] init];
      // Swift对象中不需要*
      var view : UIView = UIView()
      view = UIView() let view1 : UIView = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
      view1.backgroundColor = UIColor.redColor() // 枚举类型的用法:类型.枚举的值
      let btn : UIButton = UIButton(type: UIButtonType.Custom)
      btn.backgroundColor = UIColor.blueColor()
      btn.setTitle("按钮", forState: UIControlState.Normal)
      btn.frame = CGRect(x: 20, y: 20, width: 60, height: 30)
      view1.addSubview(btn)
import UIKit

// 1.在开发中优先使用常量,只有在需要修改时,在修改成var

// 2.常量本质:保存的内存地址不可以修改,但是可以通过内存地址拿到对象,之后修改对象内部的属性

let view : UIView = UIView()
// view = UIView() 错误写法
view.backgroundColor = UIColor.red

其中UIView(),代表创建一个UIView的对象,view指针内存放该对象的内存地址,let修饰,也就是内存地址或是指针所指向的对象不可修改,但是可以通过指针拿到该对象去设置对象内部的属性

swift学习第一天:认识swift以及swift的常量和变量的更多相关文章

  1. Swift学习笔记(十四)——字符,常量字符串与变量字符串

    在学习Java过程中,字符串碰到过String和StringBuffer,当中前者是不可变的,不能对字符串进行改动:后者是可变的,能够不断改动. 来到Swift中,对字符串的定义变的更加简单. (1) ...

  2. Swift学习第一天--面向过程

    //: Playground - noun: a place where people can play import UIKit //---------------------- Hello wor ...

  3. swift学习第一天---常量变量基础数据类型

    import Foundation /** * 1.常量 变量 知识要点:常量的定义用let 变量的定义用var 常量一旦定义便不可再更改. 变量定义之后可以在定义之后的程序中任意地方进行修改. */ ...

  4. swift系统学习第一章

    第一节:变量,常量,类型推断,字符,字符串 //swift学习第一节 /* 变量 常量 类型推断 字符 字符串 */ import UIKit //变量 var str = "swift&q ...

  5. swift 学习(二)基础知识 (函数,闭包,ARC,柯里化,反射)

    函数 func x(a:Int, b:Int)  {}   func x(a:Int, b:Int) -> Void {}  func x(a:Int, b:Int) ->(Int,Int ...

  6. The Swift Programming Language-官方教程精译Swift(2)基础知识

    Swift 的类型是在 C 和 Objective-C 的基础上提出的,Int是整型:Double和Float是浮点型:Bool是布尔型:String是字符串.Swift 还有两个有用的集合类型,Ar ...

  7. 智捷公开课马上开始了-欢迎大家一起讨论学习-第一系列读《Swift开发指南(修订版) 》看Swift视频教程

    引用: 智捷课堂携手51CTO学院.图灵教育联合举办iOS线上培训就业班系列体验公开课. 分享移动开发.移动设计方向最新,最热,最抢眼技术热点以及设计经验.我们每周将最少举办一次公开课,同时会提前安排 ...

  8. swift学习笔记5——其它部分(自动引用计数、错误处理、泛型...)

    之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...

  9. swift学习笔记4——扩展、协议

    之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...

随机推荐

  1. ContentValues的使用

    什么是 ContentValues类? ContentValues类和 Hashtable比较类似,它也是负责存储一些名值对,但是它存储的名值对当中的名是一个String类型,而值都是基本类型. 插入 ...

  2. [NOI.AC#40]Erlang

    链接 题解 显然,最多抽2个集合 如果一直抽一个,前提是该集合有重复的,答案是不同元素的个数+1 如果抽两个,那么最坏情况下,在一个集合中抽到某一个数的次数是这个集合不同元素的个数(因为抽不到重复的) ...

  3. Bean复制的几种框架性能比较(Apache BeanUtils、PropertyUtils,Spring BeanUtils,Cglib BeanCopier)

    转自:http://www.cnblogs.com/kaka/archive/2013/03/06/2945514.html 比较的是四种复制的方式,分别为Apache的BeanUtils和Prope ...

  4. Flume的data flow(数据流)

    data flow描述了数据从产生,传输.处理并最终写入目标的一条路径. 数据的采集的流向!如下图所示.  

  5. Codefroces 784 愚人节题目(部分)

    A. Numbers Joke time limit per test 2 seconds memory limit per test 64 megabytes input standard inpu ...

  6. vue 刷新当前页面的方式

    1.使用window.location.href window.location.replace() window.location.reload() 会出现空白,体验不是很好 2.先进入一个空路由, ...

  7. JavaScript tab页

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  8. MockServer jar包安装

    github地址: https://github.com/jamesdbloom/mockserver 1. org.apache.maven.plugin-tools:maven-plugin-an ...

  9. Vue+TypeScript学习

    Vue CLI 内置了 TypeScript 工具支持.在 Vue 的下一个大版本 (3.x) 中也计划了相当多的 TypeScript 支持改进,包括内置的基于 class 的组件 API 和 TS ...

  10. RFID的工作流程

    工作流程 1.阅读器通过发射天线发送一定频率的射频信号, 2.当射频卡进入发射天线工作区域时产生感应电流,射频卡获得能量被激活: 3.射频卡将自身编码等信息通过卡内置发送天线发送出去 4.系统接收天线 ...