Swift - 41 - swift1.2新特性(2)

swift 和 OC 的桥接

//: Playground - noun: a place where people can play

import UIKit

var PI = "3.14"
// Double(PI)
// 将swift的字符串转换为OC的字符串, 调用OC中的函数
(PI as NSString).doubleValue
(PI as NSString).containsString(".")
(PI as NSString).rangeOfString("14")

// 字典方面的桥接
var dict = [1:"Rinpe", 2:"Lili"]
(dict as NSDictionary).allValues
(dict as NSDictionary).allKeys

var arr = [1, 2, 3]
(arr as NSArray).indexOfObject(3)
// 默认情况下, swift中的数组是不允许存放不同类型元素的
// 所以在桥接到OC中的NSArray的时候, 就会出现问题, 这里可以使用下面初始化方法
// 来使得一个swift数组可以存放各种类型的元素, 然后进行桥接
var arr2:[AnyObject] = ["imooc", 1, 1.3]
(arr2 as NSArray)

// OC - swift
var arr3 = NSArray(arrayLiteral: "imooc", 2, 3.4)
arr3 as Array

// 桥接失败则返回nil
arr3 as? Array<String>

  

转载于:https://www.cnblogs.com/Rinpe/p/5175523.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值