Swift的74个常用内置函数介绍
Swift包含了74个内置函数,但在TheSwiftProgrammingLangage一书中只介绍了其中的7个,其它的都没有在文档中体现。
这篇文章列举出了所有的Swift库函数。文中所谓的内置函数是指无需引入任何模块(比如说Fundation等)即可以直接使用的函数。
下面先来看看7个在文档中提到的库函数:
下面列出一些很实用,但未在文档中体现的库函数:
//断言,参数如果为`true`则继续,否则抛出异常 //assertmentionedonpage55 assert(true) //计算序列的元素个数 //countElementsmentionedonpage79 countElements("foo")==3 //返回一个新的序列,其中每个元素是一个元组, //第一个值为原来元素所在的位置`index`,第二个为原来序列中的元素 //enumeratementionedonpage94 for(i,j)inenumerate(["A","B"]){ //"0:A","1:B"willbeprinted println("\(i):\(j)") } //返回所有参数中的最小值 //minmentionedonpage246 min(8,2,3)==2 //打印 //printmentionedonpage85 print("Hello") //打印(带换行) //printlnmentionedonpage4 println("World") //排序 //sortmentionedonpage14 foriinsort(["B","A"]){ //"A","B"willbeprinted println(i) }
abs(signedNumber):返回数字的绝对值
abs(-1)==1 abs(-42)==42 abs(42)==42
contains(sequence,element):如果某个序列sequence(比如说一个数组)包含指定的元素element,则返回true,否则返回false。
varlanguages=["Swift","Objective-C"] contains(languages,"Swift")==true contains(languages,"Java")==false contains([29,85,42,96,75],42)==true
dropFirst(sequence):返回一个去掉了首个元素的、新的序列(比如一个新数组)。
varlanguages=["Swift","Objective-C"] varoldLanguages=dropFirst(languages) equal(oldLanguages,["Objective-C"])==true
dropLast(sequence):返回一个去掉了最后一个元素的、新的序列(比如一个新数组)。
varlanguages=["Swift","Objective-C"] varnewLanguages=dropLast(languages) equal(newLanguages,["Swift"])==true
dump(object):打印出某个对象object的所有信息
varlanguages=["Swift","Objective-C"] dump(languages) //Prints: //▿2elements //-[0]:Swift //-[1]:Objective-C