Swift4.0 Array数组详解

 更新时间:2020年6月30日 23:37  点击:1688

数组的介绍

  数组(Array)是一串有序的由相同类型元素构成的集合,数组中的集合元素是有序的,可以重复出现。在Swift中数组类型是Array,是一个泛型集合。数组分成:可变数组和不可变数组,分别使用let修饰的数组是不可变数组,使用var修饰的数组是可变数组。

数组的初始化

一、初始化一个空数组(类型:[数据类型]())

1、创建一个整形的空数组

  let  array = [Int] ()

  这里array 数组变量 被let 修辞 ,array数组是不可变数组,只能访问,不能修改

  var  array = [Int] ()

这里array 数组变量 被var 修辞 ,array数组是可变数组,可以动态修改  

2、创建任意可存储任意类型的数组 [Any] ()

数组的使用              

 //创建一个可变数组(可存储任意类型的数据)
 var arr:Array = [Any]()
 //创建一个可变数组 (存储字符串类型)
// var arr1:[String] = [String]()
 
// 1 向数组添加元素 appped()函数
 
 //1.1向数组添加一个元素
 arr.append("xiaoming")
 print("arr == \(arr)")
 arr.append(1)
 print("arr = \(arr)");
 
 //1.2向数组添加一个数组
 let addArr:Array = [1,2,"tianjia"] as [Any]
 arr.append(addArr)
 print("addArr = \(arr)")
 
 //1.3使用加法赋值运算符(+=)也可以直接在数组后面添加元素但添加的元素必须是数组形式的 使用+=操作符时,右边的必须为数组,即使只有一个元素时也要为数组,还有就是通过这种方式你可以一次性给数组增加多个值
 let addArr1 = [6,5] as [Any]
 arr += addArr1
 print("arr = \(arr)")
 
 //1.4向数组插入元素
 arr.insert("插入的元素", at: 1)
 
 //2.移除数组里的元素
 //2.1移除特定的元素
 arr.remove(at: 0)
 print("removeArr = \(arr)")
 //2.2移除数组所有元素
 arr.removeAll()
// removeAll方法接受一个参数,允许清空数组时是否保持数组的容量,该参数默认值为false,即将数组的capacity容量设置为0。如果你想保持容量,可以参考下代码:
// var originalCapacity = arr.capacity //
// originalCapacity = 12
// arr.removeAll(keepingCapacity: true)
// var newCapacity = arr.capacity //
// newCapacity = 12
// 由上代码可以看出emptyArray在需要重新分配内存之前可以存储12个值,然而使用removeAll(),newCapcity则等于0。
 
 //2.3移除数组的第一个元素
// arr.removeFirst()
 //2.4移除数组的最后一个元素
// arr.removeLast()
// 在这些移除的方法里都有返回被移除的数据
 
// 3. 数组的长度
 let count = arr.count
 print("arrCont = \(count)")
 
// 4.数组中元素的修改
 arr[1] = "xiugai"
 print("xiuGai = \(arr)")
 
// 5.访问数组中的元素
 let item = arr[1]
 print("item = \(item)")

遍历数组

var stringArr:[String] = ["xiaoming","tianya","xiaoming","tiantian"]
 // 遍历数组
 for item in stringArr {
  print("iteem == \(item)")
 }
 
 for item in 0..<stringArr.count {
  print("iteem == \(item)")
 }
 
 // 设置遍历的区间
 for item in stringArr[0...2] {
  print("iteem == \(item)")
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持猪先飞。

[!--infotagslink--]

相关文章

  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Python 图片转数组,二进制互转操作

    这篇文章主要介绍了Python 图片转数组,二进制互转操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-09
  • php数组操作 键名比较 差集 交集赋值

    本文章提供在量的数据中级操作实例有如对键名比较计算数组的差集 计算差集 给指定数组中插入一个元素 反转数组 交集赋值新的数组实例。 //定义回调函数 funct...2016-11-25
  • C#二维数组基本用法实例

    这篇文章主要介绍了C#二维数组基本用法,以实例形式分析了C#中二维数组的定义、初始化、遍历及打印等用法,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • C#数组的常用操作方法小结

    Array数组在C#中同样是最基本的数据结构,下面为大家C#数组的常用操作方法小结,皆为细小的代码段,欢迎收看收藏...2020-06-25
  • php curl模拟post请求和提交多维数组的示例代码

    下面一段代码给大家介绍php curl模拟post请求的示例代码,具体代码如下: <&#63;php$uri = "http://www.cnblogs.com/test.php";//这里换成自己的服务器的地址// 参数数组$data = array ( 'name' => 'tanteng'// 'passwor...2015-11-24
  • C# 拷贝数组的几种方法(总结)

    下面小编就为大家带来一篇C# 拷贝数组的几种方法(总结)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • PHP 二维数组根据某个字段排序的具体实现

    本文记录的要实现的功能类似于 MySQL 中的 ORDER BY,上个项目中有遇到这样的一个需求。 要求:从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条。 遇到这个...2014-06-07
  • C#实现字符串转换成字节数组的简单实现方法

    这篇文章主要介绍了C#实现字符串转换成字节数组的简单实现方法,仅一行代码即可搞定,非常简单实用,需要的朋友可以参考下...2020-06-25
  • c#将字节数组转成易读的字符串的实现

    这篇文章主要介绍了c#将字节数组转成易读的字符串的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • C#读取文件所有行到数组的方法

    这篇文章主要介绍了C#读取文件所有行到数组的方法,涉及C#针对文件及数组的相关操作技巧,需要的朋友可以参考下...2020-06-25
  • 将二维数组转为一维数组的2种方法

    如何将下面的二维数组转为一维数组。复制代码 代码如下:$msg = array(  array(    'id'=>'45',    'name'=>'jack'  ),  array(    'id'=>'34',    'name'=>'mary'  ),  array(    'id...2014-05-31
  • php中数组写入文件方法

    在php中为我们提供了一个函数var_export 他可以直接将php代码入到一个文件中哦。 代码如下 复制代码 var_export($times,true);后面不加tru...2016-11-25
  • PHP 如何获取二维数组中某个key的集合

    本文为代码分享,也是在工作中看到一些“大牛”的代码,做做分享。 具体是这样的,如下一个二维数组,是从库中读取出来的。 代码清单: 复制代码 代码如下: $user = array( 0 => array( 'id' => 1, 'name' => '张三', 'ema...2014-06-07
  • js有序数组的连接问题

    1.前言 昨天碰到一道关于如何解决有序数组的连接问题,这是一个很常见的问题。但是这里要考虑到代码的效率问题,因为要连接的数组都是有序的,这是一个非常重要的前提条件。2.简单但效率不高的算法 我首先想到的是使用...2013-10-04
  • swift中利用runtime交换方法的实现示例

    这篇文章主要给大家介绍了关于swift中利用runtime交换方法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。...2020-06-30
  • python 实现将Numpy数组保存为图像

    今天小编就为大家分享一篇python 实现将Numpy数组保存为图像,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-27
  • C#中数组、ArrayList、List、Dictionary的用法与区别浅析(存取数据)

    在工作中经常遇到C#数组、ArrayList、List、Dictionary存取数据,但是该选择哪种类型进行存储数据呢?很迷茫,今天小编抽空给大家整理下这方面的内容,需要的朋友参考下吧...2020-06-25
  • jQuery中inArray方法注意事项分析

    这篇文章主要介绍了jQuery中inArray方法注意事项,结合实例形式分析了jQuery中inArray方法变量判断的相关注意事项,需要的朋友可以参考下...2016-01-26
  • C#中List和数组之间转换的方法

    这篇文章主要介绍了C#中List和数组之间转换的方法,涉及比较简单的转换技巧,需要的朋友可以参考下...2020-06-25