swift语言

Swift 之标准数字格式显示

佐手、 提交于 2019-12-02 05:27:06
前言:开发中我们常常会遇到金额显示,亦或者显示大数的时候,只是一连串的数字比如:7877333333,用户看到以后不方便阅读。基于此,一般开发语言都会支持数据的格式化,Swift中 NumberFormatter 就可以解决我们常见的数据格式化。他会比String.format强大的多。 NumberFormatter open func string ( from number : NSNumber ) - > String ? open func number ( from string : String ) - > NSNumber ? ///类方法 @ available ( iOS 4.0 , * ) open class func localizedString ( from num : NSNumber , number nstyle : NumberFormatter . Style ) - > String DEMO let n : NSNumber = 64.01 let formater = NumberFormatter . init ( ) //formater.numberStyle = .currency print ( formater . string ( from : n ) ) print ( formater . number ( from

初探swift语言的学习笔记七(swift 的关健词)

佐手、 提交于 2019-12-02 02:32:06
初探swift语言的学习笔记七(swift 的关健词) 原文地址: http://blog.csdn.net/fengsh998/article/details/32133809 转载请注明出处 每一种语言都有相应的关键词,每个关键词都有他独特的作用,来看看swfit中的关键词: 关键词: 用来声明的: “ class, deinit, enum, extension, func, import, init, let, protocol, static, struct, subscript, typealias, var.” 用于子句的: “ break, case, continue, default, do, else, fallthrough, if, in, for, return, switch, where, while.” 表达式和类型的: “ as, dynamicType, is, new, super, self, __COLUMN__, __FILE__, __FUNCTION__, __LINE__” // 特殊语境使用的 : “didSet, get, inout, mutating, override, set, unowned, unowned(safe), unowned(unsafe), weak , willSet” class 用来定义一个类

Swift 派发机制

不想你离开。 提交于 2019-12-01 21:47:29
此篇博客用来自我学习,来源 戴铭大佬的这篇博客 Swift 派发机制 派发目的是让 CPU 知道被调用的函数在哪里。 Swift 语言是支持编译型语言的直接派发,函数表派发和消息机制派发三种派发方式的,下面分别对这三种派发方式说明下。 直接派发 C++ 默认使用的是直接派发,加上 virtual 修饰符可以改成函数表派发。直接派发是最快的,原因是调用指令会少,还可以通过编译器进行比如内联等方式的优化。缺点是由于缺少动态性而不支持继承。 12345678910 struct {var x:Int64var y:Int32func land() {}}func DragonWillFire(_ position:DragonFirePosition) {position.land()}let position = DragonFirePosition(x: 342, y: 213)DragonWillFire(position) 编译 inline 后 DragonWillFire(DragonFirePosition(x: 342, y: 213)) 会直接跳到方法实现的地方,结果就变成 position.land() 。 函数表派发 Java 默认就是使用的函数表派发,通过 final 修饰符改成直接派发。函数表派发是有动态性的,在 Swift 里函数表叫 witness

iOS开发自学资源

前提是你 提交于 2019-11-30 20:39:54
iOS开发完全自学资源集合 字数1740 阅读2910 评论36 喜欢299 如果你有一个很好的想法,为什么不自己动手做一个App来实现它呢。即使你完全没有编程经验也没有关系,通过以下这些精心挑选的教程和资源,你也一定能作出属于自己的iOS App来。(当然如果你暂时还没有一个好的想法或者觉得自己还没做好充足的准备,那也没关系,你可以收藏这篇“资源集合”, 技匠 会为你持续更新其中的内容,当你准备好的那天,翻出这篇文章,就可以开始实现你的梦想。 ) ( 补充:如果你由于网络原因无法浏览以下YouTube视频教程或书籍,也可以关注我的简书或微信账号,稍后我会将资源下载到我的网盘,并分享给需要的读者^_^ ) Building Your First Swift App Video 首先当然是来自苹果的官方教程“构建你的第一个Swift App”了。苹果通过一段只有6分钟的短视频,介绍了如何使用Xcode IDE快速地构建出一个使用Swift编写的APP来。这也是你开始学习iOS开发的一个很好的起点。 Swift for Absolute Beginners(YouTube视频) 这是一套5集YouTube视频教程,通过一些短小的例子介绍了Swift的基本特性和语法,结合playground的使用,能让Swift的初学者在非常生动的环境下有效地学习这门新兴语言。 How To Make

fir.im Weekly

倾然丶 夕夏残阳落幕 提交于 2019-11-30 18:04:22
好的工具&资源,会带来更多的灵感。本期 fir.im Weekly 精选了一些实用的 iOS,Android 的使用工具和源码分享,还有前端、UI方面的干货。一起来看下:) ##Swift 开源项目精选 由 @SwiftLanguage 分享。 “基于《Swift 语言指南》开源项目收录,做了一个甄别、筛选,并辅以一句话介绍。来源 GitHub: ”Github 的 Swift 库已尽收眼底,简洁明了,还在不断更新中。正在学习 Swift 的同学不要错过-->> Swift 开源项目精选 . ##xcbuild - Facebook 出品的开源 App 构建工具 xcbuild 是 Facebook 出品的开源 App 构建工具,能够为 App 构建过程与多平台运行提供更快构建、更好文档并兼容Xcode。Github 地址--> https://github.com/facebook/xcbuild . ##Swift 烧脑体操 @唐巧_boy 出了一系列的【Swift 烧脑体操】的文章,文如题目,涨姿势必备,文章列表如下: Swift 烧脑体操(一) - Optional 的嵌套 Swift 烧脑体操(二) - 函数的参数 Swift 烧脑体操(三) - 高阶函数 Swift 烧脑体操(四) - map 和 flatMap ##GitHub Top 100的Android

fir.im Weekly

孤人 提交于 2019-11-29 14:31:45
终于一脚迈入了 2016 年。无论你是否准备好,未来已经汹涌扑来…… 新年第一期的 fir.im Weekly 干货颇多,来看一看:) ##2015 Developer Survey stackoverflow 的这份报告是对Technology、Work、Community的调查,技术部分包括编程语言、桌面操作系统、文本编辑器、IDE、Source Control 等,报告显示2015最流行的编程语言是JavaScript;Swift 是开发者最喜欢的语言;移动开发者中 Android 与 iOS 开发者比例4:3等等。全文报告,请点击 这里 . 补充: @36氪 已贴心po出中文版,在 这里 . ##来看看国外优秀公司的技术栈 @移动开发小冉 分享了一个网站——stackshare 非常实用,可用 Github 的账号登录,在 这里 可以研究国外各个优秀公司的技术栈,比如 Slack 、Anbnb等等。 ##基于Travis CI 搭建Android自动发布工作流 感谢 @Allo 的分享,Travis CI + fir.im CLI 搭建 Android 自动打包发布工作流,是非常棒的示范~ Android开发者想实现自动化发布,简化工作流程,可以来看看 这篇文章 . ##iOS 中的 UI 自适应 由 @RealmChina 分享。 “在本次 GOTO Conference

关东升的《从零开始学Swift》3月9日已经上架

血红的双手。 提交于 2019-11-29 03:45:45
大家一直期盼的《从零开始学Swift》于3月9日已经上架,它是关东升老师历时8个月的呕心沥血所编著,全书600多页,此本书基于Swift 2.x,通过大量案例全面介绍苹果平台的应用开发。全书共分5 部分,包括Swift语法篇、Cocoa Touch框架编程篇、混合编程篇、进阶篇和项目实战篇,囊括了开发工具介绍、语言基础知识,直至应用在App Store上线的所有内容。此外,本书前20 章专门配有同步练习,以帮助读者掌握所学知识。本书更加适合Swift开发者。大家可以看一下。 http://item.jd.com/10153271407.html 附《从零开始学Swift》此书目录: 第1章准备起航 1.1本书约定 1.2Swift开发工具 1.3本章小结 1.4同步练习 第2章第一个Swift程序 2.1使用REPL 2.2使用Playground 2.3使用Web网站 2.4通过Xcode创建OS X工程 2.5通过AppCode创建OS X工程 2.6使用swiftc命令 2.7代码解释 2.8本章小结 2.9同步练习 第3章Swift语法基础 3.1标识符和关键字 3.2常量和变量 3.3注释 3.4表达式 3.5本章小结 3.6同步练习 第4章运算符 4.1算术运算符 4.2关系运算符 4.3逻辑运算符 4.4位运算符 4.5其他运算符 4.6本章小结 4.7同步练习

Alamofire 4.0 & swift 3.0 学习

爱⌒轻易说出口 提交于 2019-11-28 22:57:47
  在这前,已经介绍并学习过 AFNetworking 源码了,现在通过阅读学习Alamofire最新源码同时,学习swift 3.0这门语言,虽然swift programming language已经看过,但是没有实际例子语法性的东西真的很容易就忘记。这里会简单绍Alamofire最新源码的架构,并且学习swift 3.0这门语言,透过Alamofire学习优秀的swift 3.0用法并记录,加深记忆。      Alamofire 简述    其实alamofire跟 AFNetworking 做的事情是一样的,所以会非常想似,架构,思路等,所以细节实现并不会很深入写。大概的类结构及关系如下: 1、Alamofire是用来提供对外接口的,最终调用都被接到SessionManager,SessionManager依赖ParameterEncoding把参数,数据等生成请求,再依赖SessionDelegate生成sessionTask,每个task都与TaskDelegate成对的包装在Request里。服务器数据的返回会很到SessionDelegate,到被分发到对应的taskDelegate。当完成时,就会调用Request预设置的block任务。前依赖ResponseSerializer对数据进行返序列化,再通过block回调给使用者。以下为它的流程图: 说明

swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程

假如想象 提交于 2019-11-28 16:55:32
swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 1.2.3 注册非免费苹果账号 swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 免费的苹果账号在开发应用程序时会受到了很多的限制,如真机测试等,所以需要注册一个非免费的苹果账号。以下是注册非免费的苹果账号的具体步骤本文选自 iOS游戏框架Sprite Kit基础教程 : ( 1 )在 Safari 中输入网址( https://developer.apple.com/programs/ ),按下回车,如图 1.9 所示。 图 1.9 操作步骤 1 ( 2 )选择 iOS Developer Program 选项,进入 iOS Developer Program-Apple Developer 网页,如图 1.10 所示 本文选自 iOS游戏框架Sprite Kit基础教程 。 图 1.10 操作步骤 2 ( 3 )选择 EnrollNow 按钮,进入 Enrolling in Apple Developer Programs-Apple Developer 网页,如图 1.11 所示。 图 1.11 操作步骤 3 ( 4 )选择 Continue 按钮,进入 Sign in or create an Apple ID-Apple Developer Program

Swift笔记-让你2小时学会Swift

安稳与你 提交于 2019-11-28 13:42:07
过年不能闲着,一边学习Swift,一边写笔记,相信在有一定其他语言基础的情况下用1.5小时看完该文章即可掌握。然后再花30分钟打开XCode写个Demo. 生命中拿出2小时来认识一门语言,很值吧! 笔记共分为两部分,一Swift基础知识,二使用Xcode开发一个软件 [TOC] swift基础知识 变量和常量 //定义变量 var myVariable = 123 //定义常量 let myConstantVariable = 123 // 隐式指定整数类型 var anInteger = 2 // 明确指定整数类型 let anExplicitInteger :Int = 2 元组 let aTuple = (1, "Yes") let anotherTuple = (aNumber: 1, aString: "Yes") let theOtherNumber = anotherTuple.aNumber // = 1 其他用法 let http404Error = (404, "Not Found") let (statusCode, statusMessage) = http404Error print("The status code is \(statusCode)") 更多用户函数返回值,返回两个以上的值,跟golang很像 数组 var arrayOfIntegers