文档章节

Swift 基础学习(2)

iOS赵师顺
 iOS赵师顺
发布于 2017/04/07 10:11
字数 634
阅读 5
收藏 0

// MARK:-----------------数组与for循环---------------------

/*
 ..< 运算符是一个非包函范围运算符,不包括上限值。还有一个运算符 ... 它具有包容性。
 数组通过 count 属性来计算数组中的项目总数。也可以查找数组中特定项,通过语法 arrayName[index] 定义,如在这里看到。
 */

// 闭区间运算符

for i in 0...5 {
    print(i)
}

// 半闭区间 (包前 不包后)

for i in 5..<7 {
    print(i)
}
     
   // 反序遍历
        for i in (0...10).reversed() {
            print(i)
        }


// MARK:--------------------数值字面量----------------------------

/*
 一个十进制数,没有前缀
 一个二进制数,前缀是0b
 一个八进制数,前缀是0o
 一个十六进制数,前缀是0x
 */

let decimalInteger = 17
let binaryInteger = 0b10001       // 二进制的17
let octalInteger = 0o21           // 八进制的17
let hexadecimalInteger = 0x11     // 十六进制的17

// MARK:-------------逻辑运算符-------

// 与OC一样处理
/*
 逻辑非(!a)
 逻辑与(a && b)
 逻辑或(a || b)
 */


// MARK:----------------if 语句和字符串插值--------------
/*
 这是一个if语句的一个例子,就像在其它的编程语言一样。条件的括号是可选的,大括号是必需的,即使只有1行语句。
 这里说明一个叫做字符串内插的新的技术的一个例子。在Swift中每当想要替换字符串中东西,只需使用此语法:\(表达式)。
 */
if name == 1 {
    print("正确")
}
    // MARK: - if let / var (连用语法,目的就是判断值)
    func demo () {
        // 定义可选值
        let oName: String? = "老王"
        let oAge: Int? = 10
        // 需要解包
        if oName != nil &&  oAge != nil{
            print(oName! + String(oAge!))
        }
        
        // if let 连用 就是用来判断对象的值是否为nill,不是单纯的判断
        if let name = oName,
            let age = oAge{
            //  进入分支一定有值,并且一定不需要解包
            print(name + String(age))
        }
        
    }

    //MARK: - guard let/ var (守卫守护)
    func demo1() {
        
        // 定义可选值
        let  oName: String? = "隔壁"
        let oAge: Int?  = nil
        
        // 判断条件不满足 执行else{}
        guard let name  = oName,
        let age = oAge else {
            print("name 或者 age 为空")
            return
        }
        // 执行到这 就保证一定有值了
            print(name + String(age))
    }

    //MARK: - Switch使用
    
    
    /**
     1,OC中 Switch 分支要求必须是整数,而 swift中 可以是任意类型
     2,swift 中 Switch一般不需要 break
     3,swtch 如果要多值,使用,隔开
     4,所有的分支至少需要一条指令,如果什么都不执行,才使用break
     */
    func demo3(num:  NSString) {
        switch num {
        case "10","8":
            print("我是字符串")
        default:
            print("哈哈")
        }
    }


// MARK:- 调用

    override func viewDidLoad() {
        super.viewDidLoad()
        
        demo()
        demo1()
    }

 

© 著作权归作者所有

iOS赵师顺
粉丝 3
博文 74
码字总数 36150
作品 0
昌平
程序员
私信 提问
10个最佳的 Swift 教程实例

Swift 是一门相对比较新的编程语言,深受广大苹果社区开发者的喜爱。在短短不到一年的时间,很多很多开发者已经转向使用 Swift 编程语言了。苹果开发者们接受 Swift,纯粹是因为 Swfit 更加先...

noeticforce
2015/12/09
17K
6
Go语言基础学习:变量

Go语言基础学习(一)变量 猜你喜欢 Ceylon语言学习笔记(1) 《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言 go语言学习-常量 GO语言学习-复杂类型(2) Go语言学习...

d_watson
2016/04/15
13
0
15个快速学习苹果Swift编程语言的入门教程

要说今年最火的编程语言是什么。那就非Swift莫属了。当然最主要还是市场炒的比较热,加上官方Swift教程《The Swift Programming Language》在北航的大三学生发起在github上进行协同翻译获得了...

欲思
2014/07/24
20.1K
7
Swift 学习笔记2- 类型

类型 一般我们总是会把编程语言按照各种纬度做很多归类,比如根据是解释执行还是编译执行的划分成两类。另一个划分纬度就是弱类型还是强类型的,所以可见类型在一门语言是多么的重要。 那么在...

喂码呢
2014/08/11
79
0
Swift 个人学习笔记 - 06: 控制流

本文章纯粹是中文版《The Swift Programming Language》的学习笔记,所以绝大部分的内容都是文中有的。本文是本人的学习笔记,不是正式系统的记录。仅供参考 以下还是有很多没看懂、不确定的...

amc
2017/02/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

分布式协调服务zookeeper

ps.本文为《从Paxos到Zookeeper 分布式一致性原理与实践》笔记之一 ZooKeeper ZooKeeper曾是Apache Hadoop的一个子项目,是一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它...

ls_cherish
今天
4
0
redis 学习2

网站 启动 服务端 启动redis 服务端 在redis 安装目录下 src 里面 ./redis-server & 可以指定 配置文件或者端口 客户端 在 redis 的安装目录里面的 src 里面 ./redis-cli 可以指定 指定 连接...

之渊
昨天
2
0
Spring boot 静态资源访问

0. 两个配置 spring.mvc.static-path-patternspring.resources.static-locations 1. application中需要先行的两个配置项 1.1 spring.mvc.static-path-pattern 这个配置项是告诉springboo......

moon888
昨天
4
0
hash slot(虚拟桶)

在分布式集群中,如何保证相同请求落到相同的机器上,并且后面的集群机器可以尽可能的均分请求,并且当扩容或down机的情况下能对原有集群影响最小。 round robin算法:是把数据mod后直接映射...

李朝强
昨天
4
0
Kafka 原理和实战

本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/bV8AhqAjQp4a_iXRfobkCQ 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双语班)。先后从事过电子商务、开放平...

vivo互联网技术
昨天
24
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部