一:认识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. open阶段的一致性检验(二)

    SQL> select * from v$version where rownum=1; BANNER --------------------------------------------- ...

  2. makeMtk- user 版本编译

    有时候我们需要在我们的手机上编译user 版本,先说一下user 跟eng版本的区别 user:这个版本是没有root权限的,当你adb shell进入后,linux下显示的是$,不可以push ap ...

  3. sql跳过非工作日(周末和节假日)

    简介:场景1:基于开始日期和工期,推算结束日期. 场景2:基于开始日期和结束日期,计算工期 注:需要自己做界面维护工作日表(s_WorkDay)和节假日表(s_SpecialDay) 涉及到的数据表 ...

  4. 洛谷P2147 [SDOI2008]Cave 洞穴勘测

    题目描述 辉辉热衷于洞穴勘测. 某天,他按照地图来到了一片被标记为JSZX的洞穴群地区.经过初步勘测,辉辉发现这片区域由n个洞穴(分别编号为1到n)以及若干通道组成,并且每条通道连接了恰好两个洞穴.假 ...

  5. 洛谷——P1816 忠诚

    https://www.luogu.org/problem/show?pid=1816#sub 题目描述 老管家是一个聪明能干的人.他为财主工作了整整10年,财主为了让自已账目更加清楚.要求管家每天记 ...

  6. 86.八千万qq密码按相似度排序并统计密码出现次数,生成密码库

    存储qq的文件地址以及按照密码相似度排序的文件地址 //存储qq的文件的地址 ] = "QQ.txt"; //按照密码相似度排序的文件地址 ] = "QQpassword ...

  7. android 4.4 添加物理按键

    kernel下添加 Linux-3.4/drivers/input/keyboard/Makefile linux-3.4/drivers/input/keyboard/sw-keyboard.c s ...

  8. CSDN博客的文章分类和战略规划

    CSDN原创文章已经有300多篇了,现在已经整理了好多个分类目录了. 今天,特别向大家介绍下,每个分类的含义和规划. CSDN博客是我的一个重要的自媒体,也是我的一个战略实践. 我会精心维护这个博客, ...

  9. NYOJ 552 小数阶乘

    小数阶乘 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描写叙述 编写一个程序,求一个数m的阶乘. 输入 有多组測试数据,以EOF结束. 每组測试数据有1个整数m. 输出 每 ...

  10. 四种布局JS

    现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...