📜  swift list - Swift (1)

📅  最后修改于: 2023-12-03 15:05:26.025000             🧑  作者: Mango

Swift List - 介绍Swift的列表实现

Swift是一门现代化的编程语言,对于处理集合、列表的操作提供了很多便捷、高效的实现。本文将介绍Swift中列表的相关实现和使用。

1. 数组

在Swift中,最基本的列表数据结构就是数组。数组是一个有序的集合,其元素类型必须相同。下面是初始化一个整数类型数组的示例:

var array: [Int] = [1, 2, 3, 4, 5]

通过下标访问数组元素:

print(array[0]) // 输出1

遍历数组:

for element in array {
    print(element)
}

删除数组元素:

array.remove(at: 2) // 删除下标为2的元素
2. 链表

Swift中也提供了链表的实现,通过引用关系将每个元素连接起来。Swift的链表主要有单向链表和双向链表两种。下面是单向链表的实现:

class Node {
    var value: Int
    var next: Node?
    
    init(_ value: Int, _ next: Node? = nil) {
        self.value = value
        self.next = next
    }
}

class LinkedList {
    var head: Node? = nil
    
    func add(_ value: Int) {
        if head == nil {
            head = Node(value)
            return
        }
        
        var node = head
        while node?.next != nil {
            node = node?.next
        }
        node?.next = Node(value)
    }
    
    func remove(_ value: Int) {
        var node = head
        if node?.value == value {
            head = node?.next
            return
        }
        
        while node?.next != nil {
            if node?.next?.value == value {
                node?.next = node?.next?.next
                return
            }
            node = node?.next
        }
    }
}

使用方式如下:

let list = LinkedList()
list.add(1)
list.add(2)
list.add(3)
list.remove(2)
3. 集合

Swift中的集合又可以分为无序集合和有序集合两种。无序集合在Swift中被称为Set,有序集合则是Array。

Set是一个无序、不重复的集合。其元素必须遵循Hashable协议。使用方式如下:

var set: Set<Int> = [1, 2, 3, 4, 5]
set.insert(6)
set.remove(3)

Array是一个有序的集合,可以使用下标来访问和修改元素。使用方式如下:

var array: [Int] = [1, 2, 3, 4, 5]
array.append(6)
array.remove(at: 2)
4. 总结

Swift提供了丰富的列表实现,包括数组、链表和集合。在实际开发中,根据具体的业务需求选择合适的列表类型可以提高程序的效率,并减少不必要的开发成本。