Array的用法总结-swift

Araay是有序的数据集,在OC中分为不可变数组NSArray和可变数组NSMutableArray,在swift中只有常量和变量两种类型,声明成变量那就可以说明是可变的了!

学习时的具体的用法总结成如下的代码:

 //数组
        var arrInts = [Int]()//创建一个空数组
        arrInts = [];
        print("arrInts is of type [Int] with \(arrInts.count) items.")//// 打印 "someInts is of type [Int] with 0 items."

        var threeDoubles = Array(repeating:0.0,count:3)//创建一个带有默认值的数组
        print("threeDoublesArray:\(threeDoubles)")//打印 threeDoublesArray:[0.0, 0.0, 0.0]
        threeDoubles += threeDoubles//数组合并
        print("threeDoubles:\(threeDoubles)")//打印 threeDoubles:[0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

        let anotherThreeDoubles = Array(repeating: 2.5, count: 3)

        let sixDoubles = threeDoubles + anotherThreeDoubles;//数组合并
        print(sixDoubles)//打印 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.5, 2.5, 2.5]

        //用数组字面量构造数组
        var goodsListArr:[String] = ["onions","eggs","apple","orange","pear","salt"]

        goodsListArr.append("vinegar")//在数组的末尾添加一个元素(不可以用下标访问的形式去在数组尾部添加新项)
        goodsListArr += ["Chocolate Spread", "Cheese", "Butter"]//给数组添加几个元素

        if goodsListArr.isEmpty {//判断数组是否为空
            print("The shopping list is empty.")
        } else {
            print("The shopping list is not empty.")
        }
        // 打印 "The shopping list is not empty."(shoppinglist 不是空的)

        let firstItem = goodsListArr[0]//根据索引 取对应的索引值
        print("firstItemValue:\(firstItem)")//打印 firstItemValue:onions

        goodsListArr[0] = "eight onions"//将第一个索引值替换掉
        // 其中的第一项现在是 "Six onions" 而不是 "onions"

        print("Replace the former results:\(goodsListArr)")//替换前的结果  Replace the former results:["eight onions", "eggs", "apple", "orange", "pear", "salt", "vinegar", "Chocolate Spread", "Cheese", "Butter"]
        goodsListArr[2...4] = ["Bananas", "Apples"]//将某个范围的值替换掉
        print("results of substitution:\(goodsListArr)")//替换后的结果 results of substitution:["eight onions", "eggs", "Bananas", "Apples", "salt", "vinegar", "Chocolate Spread", "Cheese", "Butter"]

        //在数组中插入元素(调用数组的insert(_:at:)方法来在某个具体索引值之前添加数据项)
        goodsListArr.insert("books", at: 0)//在0索引之前添加数据,现在数组第一个元素是“books”

        //根据索引移除数组中某一个元素

        let removeItem = goodsListArr.remove(at: 0)//将数组的第一个元素移除并获取被移除的第一项元素
        print("removed index 0 item is:\(removeItem)  After removing the results:\(goodsListArr)")//removed index 0 item is:books  After removing the results:["eight onions", "eggs", "Bananas", "Apples", "salt", "vinegar", "Chocolate Spread", "Cheese", "Butter"]

        //如果我们试着对索引越界的数据进行检索或者设置新值的操作,会引发一个运行期错误。我们可以使用索引值和数组的count属性进行比较来在使用某个索引之前先检验是否有效。除了当count等于 0 时(说明这是个空数组),最大索引值一直是count - 1,因为数组都是零起索引

        let lastItem = goodsListArr.removeLast()//将数组的最后一个元素移除并获取被移除的最后一个元素值

        print("removed last item is:\(lastItem) After removing the results:\(goodsListArr)")//打印 removed last item is:Butter After removing the results:["eight onions", "eggs", "Bananas", "Apples", "salt", "vinegar", "Chocolate Spread", "Cheese"]

        for item in goodsListArr{//数组的遍历

            print("数组遍历的结果:\(item)")
            /* 打印
             数组遍历的结果:eight onions
             数组遍历的结果:eggs
             数组遍历的结果:Bananas
             数组遍历的结果:Apples
             数组遍历的结果:salt
             数组遍历的结果:vinegar
             数组遍历的结果:Chocolate Spread
             数组遍历的结果:Cheese
             */
        }

        //使用enumerated()方法来进行数组遍历。enumerated()返回一个由每一个数据项索引值和数据值组成的元组。我们可以把这个元组分解成临时常量或者变量来进行遍历(可以同时d得到每个数据项的值和索引值)
        for(index,value) in goodsListArr.enumerated(){

            print("Item \(String(index + 1)): \(value)")
        /*打印
             Item 1: eight onions
             Item 2: eggs
             Item 3: Bananas
             Item 4: Apples
             Item 5: salt
             Item 6: vinegar
             Item 7: Chocolate Spread
             Item 8: Cheese
             */
        }

这是我近期在学习swift的学习总结,给朋友们提供学习参考,同时发现有错误的地方可以指出相互交流学习共同进步!

时间: 2024-10-16 21:54:15

Array的用法总结-swift的相关文章

string array的一些小总结(初学者可以看一看,string array的用法很重要,用处很多)

string的总结 charat 用法:n = String.charAt(string, index):传入的是一个字符串和一个数字:列:var a = String.charAt("world",2);var b = String.charAt("world",0);var c = String.charAt("world",10);产生的结果就是a = "r"b = "w"c = "&quo

String的用法总结-swift

学习swift的String用法总结 学习了swift的String的用法之后感觉比OC的太直接了,不需要直接的初始化.类型声明也不用区分可变和不可变的类型,基本上就是属于哪里需要就在哪里直接写就可以的状态 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. print("viewDidLoad"

JS中Array详细用法

1.数组的创建 var name= new Array(); //创建一个数组 name[0]="zhangsan";   //给数组赋值 name[1]="lisi"; var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度 var name=["zhangsan","lisi"];       //创建一个数组并赋值 var name=new Array(&qu

JS中数组Array的用法示例介绍 (转)

new Array() new Array(len) new Array([item0,[item1,[item2,...]]] 使用数组对象的方法: var objArray=new Array(); objArray.concact([item1[,item2[,....]]]-------------------将参数列表连接到objArray的后面形成一个新的数组并返回,原有数组不受影响.如:var arr=["a","b","c"];

vector 和array的用法

模板类vector 模板: 1 vector<typename>vt(n_elem); 其中n_elem可以是整型常量,也可以是整形变量.如: 1 #include<vector> 2 ... 3 using namespace std; 4 vector<int>vi;//大小为0 5 int n; 6 cin>>n; 7 vector<double>vd(n); 模板类array(c++11) 1 array<typename,n_el

array()的用法

<?php $my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse"); //=>区分键值 sort($my_array)://对数组进行排序 print_r($my_array); ?> <?php $my_array = array( "Dog",  &quo

forEach()、Array.map()和Array.filter()用法

Array.forEach() forEach()方法为每个数组元素调用一次函数(回调函数). <!DOCTYPE html> <html> <meta charset="utf-8"> <title>JavaScript Array.forEach()</title> <body> <h2>JavaScript Array.forEach()</h2> <p>为每个数组元素调用

C++ std::array 基本用法

#include <iostream> #include <string> #include <array> using namespace std; // https://zh.cppreference.com/w/cpp/container/array int main() { ///array<int, 3> arr({ 1,2,3 }); // 非法 array<int, 3> arr1{ { 1,2,3 } }; // 不可以扩容,属于

array的用法(关于动态选择值)