用户登录
用户注册

iOS UITableView展开缩放动画实例代码

这篇文章主要介绍了SwiftUITableView展开缩放动画实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  Swift-UITableView展开缩放动画 
  效果
  源码:https://github.com/YouXianMing/Swift-Animations 
////HeaderV
  • 0
  • 0
  • 0
  • 0
  • 0

Swift编程中实现希尔排序算法的代码实例

希尔排序是对插入排序的一种改进版本,算法本身并不稳定,存在优化空间,这里我们来讲一下希尔排序的大体思路及Swift编程中实现希尔排序算法的代码实例
  思想
希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。
该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。因为直接插入排序在元素基本有序的情况下(接近最好情况),效率是很高的,因此希尔排序在时间效率上比前两种方法有较大提高。
以n=10的一个数组49,38,65,97,26,13,27,49,55,4为例:
第一次gap=10/2=5
  <imgsrc="http://files.jb51.net/file_images/article/201607/2016
  • 0
  • 0
  • 0
  • 0
  • 0

Swift中的条件判断、循环、跳转语句基础学习笔记

if、for和while循环、switch等这些基本的程序流程控制语句基本上是每个编程语言的标配,在入门环节中,这里对Swift中的条件判断、循环、跳转语句基础学习笔记作了一个整理:
  一、引言
  一种编程语言的强大与否,很大程度上取决于其提供的程序流程控制方案,就如使用汇编语言实现复杂的程序流程是一件痛苦的事情。Swift中提供了许多强大的流程控制语句,例如快速遍历for-in,while循环,repeat-while循环,switch选择等,需要注意的是,在Swift2.2中,for(a;b;c)循环已经被弃用掉,并且Swift中的Switch语句也更加强大,可以处理任意数据类型。
  二、for-in循环
  配合范围运算符,for-in循环可以用来执行确定次数的循环,示例如下:
forindexin1...5{pr
  • 0
  • 0
  • 0
  • 0
  • 0

详解Swift中的函数及函数闭包使用

Swift的函数在创建和调用时非常简洁,在编写具有闭包特性的函数时同样也相当方便,以下我们就来详解Swift中的函数及函数闭包使用:
  一、引言
  函数是有特定功能的代码段,函数会有一个特定的名称调用时来使用。Swift提供了十分灵活的方式来创建与调用函数。事实上在Swift,每个函数都是一种类型,这种类型由参数和返回值来决定。Swift和Objective-C的一大区别就在于Swift中的函数可以进行嵌套。
  而Swift中的闭包是有一定功能的代码块,这十分类似于Objective-C中的block语法。Swift中的闭包语法风格十分简洁,其作用和函数的作用相似。
  二、函数的创建与调用
  函数通过函数名,参数和返回值来定义,参数和返回值决定一个函数的类型,在调用函数时,使用函数名来进行调用,示例如下:
//传入一个名
  • 0
  • 0
  • 0
  • 0
  • 0

简单理解插入排序算法及Swift版的代码示例

插入排序算法可以在已排序的序列中将要插入的元素和原有元素保持有序,这里我们来简单理解插入排序算法及Swift版的代码示例,需要的朋友可以参考下
  算法思想
插入排序的方式类似平时打扑克牌的时候排序自己手中的扑克牌。开始时,我们左手中没有牌,桌上有洗好的扑克牌,我们抓取一张扑克牌并放入左手的正确位置。为了找到一张扑克牌的正确位置,我们从右到左将它与手中的每张牌进行比较,左手上的牌总是排序好的,而这些牌原来都是桌上牌堆中顶部的牌,当我们抓完牌时,左手中的牌自然是有顺序的。
之所以叫插入排序,不是为别的,正是因为该算法的核心就是将无序的元素插入排好序的部分。
插入排序的核心思想即在于划分已排序和未排序,将每个待排序的元素逐个与已排序的元素比较,找出恰当的插入位置,插入元素,循环操作至结束
这里是一张插入排序的使用流程,在写代码前先感受一下。
  <imgsrc="http://files.jb51.net/file_images/article/201607/2
  • 0
  • 0
  • 0
  • 0
  • 0

详解Swift中的Characters字符类型与String字符串类型

Swift中的字符串操作相当便捷,下面我们来详解Swift中的Characters字符类型与String字符串类型,需要的朋友可以参考下
  一、引言
  Swift中提供了String类型与Characters类型来处理字符串和字符数据,Swift中的String类型除了提供了许多方便开发者使用的方法外,还可以与Foundation框架的NSString类进行转换,使用起来十分方便。
  二、String基础
  在Swift中,使用双引号来定义字符串,开发者可以通过如下代码来创建一个字符串常量:
letstr="Hello,playground"
  可以通过下面两种方式来创建空字符串:
<preclass="brush:plain;"
  • 0
  • 0
  • 0
  • 0
  • 0

Swift开发之UITableView状态切换效果

这篇文章主要介绍了Swift开发之UITableView状态切换效果的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
  效果
  源码
  https://github.com/YouXianMing/Swift-Animations
////TableViewTapAnimationController.swift//Swift
  • 0
  • 0
  • 0
  • 0
  • 0

swift中c风格的for循环执行效率

这篇文章主要介绍了swift中c风格的for循环执行效率的相关资料,需要的朋友可以参考下
  今天用swift写了1至999999的和,测试其执行效率,但是发现不同代码执行效率大大不同
  1.
  2.
<
  • 0
  • 0
  • 0
  • 0
  • 0

IOS 实现简单的弹幕功能

本文主要介绍IOS实现弹幕功能,这里给大家一个实例来展现弹幕功能,有需要的小伙伴可以参考下
  前言
  简单实现弹幕功能,表跟我谈效率,但也有用队列控制同时弹的数量。
  正文
    代码实现:
letDANMAKU_SPEED:CGFloat=150//弹幕每秒移动速度letDANMAKU_SPACE_TIME:NSTimeInterval=1//弹幕之间的时间间隔letDANMAKU_MAX_ROW=3//最多同时弹幕行数letdanmakuFont=UIFont.systemFontOfSize(18)//弹幕字体大小varrowArray=Array<Arr
  • 0
  • 0
  • 0
  • 0
  • 0

Swift中内置的集合类型学习笔记

Swift中自带数组、set、字典三大集合类型,这里将学习过程中的基础的Swift中内置的集合类型学习笔记进行整理,需要的朋友可以参考下
  一、引言
  Swift中提供了3种集合类型,Array数据类型,Set集合类型,Dictionary字典类型。Array用于存放一组有序的数据,数据角标从0开始一次递增;Set用于存放一组无序的数据,数据不可以重复;Dictionary也用于存放一组无序的数据,只是其是按照键值对的方式存储,键值必须唯一。这里借用官方文档中的一张图来表示3种集合类型的特点:
  二、Array类型
  Array通常也被称为数组,Swift是一种类型安全语言,其中的Array类型也必须确定其元素的类
  • 0
  • 0
  • 0
  • 0
  • 0

Swift操作Quartz 2D进行简单的绘图与坐标变换的教程

这篇文章主要介绍了Swift操作Quartz2D进行简单的绘图与坐标变换的教程,Quartz2D是CoreGraphics框架中的一个重要组件,经常被MacOS或和iOS开发者用来绘图,需要的朋友可以参考下
  Quartz2D简介
Quartz2D是苹果公司开发的一个二维图形绘制引擎,同时支持iOS和Mac系统。
  它是一套基于C的API框架,提供了低级别、轻量级、高保真度的2D渲染。它能完成的工作有:绘制图形:线条\三角形\矩形\圆\弧等绘制文字绘制\生成图片(图像)读取\生成PDF截图\裁剪图片自定义UI控件…
  Quartz2D进行绘图
iOS绘图技术主要有UIKit,Quartz2D,CoreAnimati
  • 0
  • 0
  • 0
  • 0
  • 0

Swift代码实现冒泡排序算法的简单实例

冒牌排序可谓最基本的排序算法之一,稳定而没有优化空间:D下面就一起来看一下Swift代码实现冒泡排序算法的简单实例:
  冒泡排序原理
1.对需要排序的数据,俩俩进行比较,小的放前面,大的放后面
2.依次对每一对相邻的数据作步骤1的工作,当排序到最后一个元素的时候,我们能保证这个数据是最大。
3.针对所有的元素重复以上的步骤,除了最后一个(这里为什么需要针对除了最后一个元素的全部元素做一次呢,因为最后一个元素已经是最大的不需要排序了,同时,由于元素的交换,交换上来的元素的大小不一定比前面的元素的大,所以需要再做一次)。
4持续对越来越少的元素重复3的步骤,直到没有任何一对元素需要比较。
时间复杂度
我们一般谈最坏时间复制度
n(n-1)/2=O(n)
  算法稳定性
相同元素的前后顺序并没有改变,所以是一种稳定排序算法
<divclass="jb51code
  • 0
  • 0
  • 0
  • 0
  • 0

Swift实现堆排序算法的代码示例

堆排序(HeapSort)是一树形选择排序,堆排序的时间复杂度O(nlogn),这里我们来看一下Swift实现基堆排序算法的代码示例,首先对堆排序算法的基本概念作一个了解:
  算法思想
堆排序利用了最大堆(或小根堆)堆顶记录的关键字最大(或最小)这一特征,使得在当前无序区中选取最大(或最小)关键字的记录变得简单。
1.用最大堆排序的基本思想
(1)先将初始文件R[1..n]建成一个最大堆,此堆为初始的无序区
(2)再将关键字最大的记录R[1](即堆顶)和无序区的最后一个记录R[n]交换,由此得到新的无序区R[1..n-1]和有序区R[n],且满足R[1..n-1].keys≤R[n].key
(3)由于交换后新的根R[1]可能违反堆性质,故应将当前无序区R[1..n-1]调整为堆。然后再次将R[1..n-1]中关键字最大的记录R[1]和该区间的最后一个记录R[n-1]交换,由此得到新的无序区R[1..n-2]和有序区R[n-1..n],且
  • 0
  • 0
  • 0
  • 0
  • 0

使用Swift实现iOS App中解析XML格式数据的教程

这篇文章主要介绍了使用Swift实现iOSApp中解析XML格式数据的教程,讲到了iOS中提供的NSXMLParser和NSXMLParserDelegate两个API的用法,需要的朋友可以参考下
  在IOS中,提供了一套解析XML数据的API。其实也很简单,就是NSXMLParser和NSXMLParserDelegate。
  可以直接指定到XML的URL去实例化NSXMLParser
复制代码代码如下:
publicconvenienceinit(contentsOfURLurl:NSURL)
解析文件,返回的是一次解析的结果
复制代码代码如下:<divclass="codebo
  • 0
  • 0
  • 0
  • 0
  • 0

Swift编程中的switch...case语句实例解析

这篇文章主要介绍了Swift编程中的switch...case语句实例解析,其中重点还是对于fallthrough关键字用法的讲解,需要的朋友可以参考下
  Swift中的switch...case语句可以判断对象类型,Objective-C中则必须是整数。
不可以穿透,可以不写break,
varrank="A"switchrank{case"A"://相当于ifprint("优")case"B"://相当于elseifprint("优")case"C"://相当于elseifprint("优")default://相当于elseprint("没有评级")}
  
因为不能穿透所以不能这么写
<divclass="jb51code"
  • 0
  • 0
  • 0
  • 0
  • 0

详解Swift的switch...case语句中break关键字的用法

这篇文章主要介绍了Swift的switch...case语句中break关键字的用法,是Swift入门学习中的基础知识,需要的朋友可以参考下
  与Objective-C中这部分内容相比,在Swift中switch得到了极大的改善。这是一件非常有趣的事,因为这还是没有添加到Objective-C中,还是没有打破Objective-C是C的超集的事实。
  第一件令人兴奋的地方是可以对字符串转换。这也许正是你之前想要做,却不能做的事。在Objective-C中如果要对字符串用“switch”,你必须要使用多个if语句,同时要用isEqualToString:,像下面这样:
if([person.nameisEqualToString:@"MattGalloway"]){NSLog(@"AuthorofaninterestingSwiftarticle");}elseif([person.nameis
  • 0
  • 0
  • 0
  • 0
  • 0

深入解析Swift中switch语句对case的数据类型匹配的支持

这篇文章主要介绍了Swift中switch语句对case的数据类型匹配的支持,Swift中switch...case语句支持多种数据类型的匹配判断,十分强大,需要的朋友可以参考下
  Swift可以对switch中不同数据类型的值作匹配判断:
varthings=Any[]()things.append(0)things.append(0.0)things.append(42)things.append(3.14159)things.append("hello")things.append((3.0,5.0))things.append(Movie(name:"Ghostbusters",director:"IvanReitman"))forthinginthings{switchthing{case0asInt:println("zeroasanIn
  • 0
  • 0
  • 0
  • 0
  • 0

Swift中的条件切换语句switch...case学习教程

这篇文章主要介绍了Swift中的条件切换语句switch...case学习教程,Swift中的switch...case支持的数据类型很多,非常之强大,需要的朋友可以参考下
  语法
Swift语言中switch语句的语法:
复制代码代码如下:
switchexpression{
  caseexpression1 :
  statement(s)
  fallthrough/*可选*/
  caseexpression2,expression3 :
 &nbs
  • 0
  • 0
  • 0
  • 0
  • 0

swift实现自定义圆环进度提示效果

这篇文章主要为大家详细介绍了swift实现自定义圆环进度提示效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  本文实例为大家分享了swift圆环进度提示效果的实现代码,供大家参考,具体内容如下
  效果图:
  实现代码:
///ViewController.swift//PureSwiftAuto////Createdby王木木on16/5/17.//Copyright©2016年王木木.Allrightsreserved.
  • 0
  • 0
  • 0
  • 0
  • 0

Swift中的常量和变量简单概述

这篇文章主要介绍了Swift中的常量和变量简单概述的相关资料,非常具有参考借鉴价值,感兴趣的朋友一起学习吧
  1、在Swift中规定:在定义一个标识符时必须明确说明该标识符是一个常量还是变量
  2、使用let来定义常量,定义之后不可以修改
  3、使用var来定义变量,定义之后可以修改
  4、定义常量和变量
  常量:let标识符的名称:类型=赋值
  变量:var标识符的名称:类型=赋值
  5、类型的首字母要大写,常量与变量名不能包含数学符号,箭头
  6、常量的使用注意
  6.1在开发中,apple建议优先使用常量,只有发现需要修改时再改成变量,因为常量更加安全,不会被任意的修改
  6.2常量的本质.指向的内存地址不可以修改,但是可以通过内存地址获取到对象本身,之后修改对象内部的属性
*///定
  • 0
  • 0
  • 0
  • 0
  • 0
1  2  3  4  5  ...  下一页  

分享至

长按复制下方链接,去粘贴给好友吧:
软件
前端设计
程序设计
Java相关