Bài 9: Mảng Array trong swift - Lập trình Swift cơ bản

Đăng bởi: Admin | Lượt xem: 4344 | Chuyên mục: Swift


Mảng Array trong Swift

Hướng dẫn lập trình viên khởi tạo, khai báo cách truy cập và cập nhật duyệt qua mảng Array trong Swift.

Mảng trong Swift

Mảng được tạo từ những phần tử có cùng dữ liệu thành một thứ tự và một giá trị có thể xuất hiện ở những vị trí khác nhau trong mảng đó. Để khai báo đầy đủ một biến mảng bạn cần có Array<T> trong đó T là kiểu dữ liệu phần tử mà mảng lưu trữ như Int, String, Double ... Một cách ngắn gọn hơn thì khai báo [T] cũng tương đương với Array<T>
Lập trình viên có thể sử dụng nhiều cách để khởi tạo một mảng, ví dụ như:
// Một mảng các số nguyên 1,2,4
let numbers = [1,2,3,4,5]

// Mảng chứa các chuỗi
let string = ["VN", "Coder", "Swift"]

//Hoặc 
let string: [String] = ["VN", "Coder", "Swift"]

// Khai báo một mảng Double rỗng
var emptyDoubles: [Double] = []  //Hoặc var emptyDoubles = [Double]()

//Khai báo một mảng Float rỗng
var emptyFloats: Array<Float> = Array()

//Khỏi tạo mảng có 10 phần tử số nguyên, mỗi phần tử đều có giá trị là 0
var digits = [Int](repeating: 0, count: 10);

Truy cập các phần tử trong Mảng

Với một biến mảng của các số nguyên như dưới đây:
var numberArray = [1,3,5,7,9]

// Để kiểm tra xem mảng rỗng hay không thì sử dụng thuộc tính isEmpty

if numberArray.isEmpty {
    print("Mảng rỗng")
}
//Trong trường hợp này mảng của chúng ta không rỗng -> không in "Mảng rỗng"
Để kiểm tra xem mảng chứa bao nhiêu phần tử sử dụng thuộc tính count
var numberArray = [1,3,5,7,9]
print(numberArray.count)
--> 5
Mỗi phần tử thuộc mảng đều có chỉ số, từ phần tử đầu tiên có chỉ số 0 cho đến phần tử cuối cùng có chỉ số là count-1, để lấy giá trị phần tử có chỉ số i bạn cần dùng ký hiệu truy cập mảng [i]
var numberArray = [1,3,5,7,9]
print(numberArray[0])
--> 1
Thuộc tính first và last để truy cập nhanh đến phần tử đầu tiên và cuối cùng của mảng (nếu mảng rỗng thì hai giá trị này là nil), ví dụ print(numberArray.last)
// Duyệt qua từng phần tử mảng với index
for i in 0..<myNumbers.count {
   print(myNumbers[i])
}

//// Duyệt qua từng phần tử
for i in myNumbers {
    print(i)
}
Nếu như bạn vừa muốn lấy giá trị của phần tử và chỉ số index của phần tử đó thì khi duyệt qua phần tử mảng bạn cần áp áp dụng cú pháp duyệt qua đối tượng sinh ra từ enumerated()
for (index, value) in myNumbers.enumerated() {
    print("Chỉ số \(index) có giá trị \(value)")
}
//Chỉ số 0 có giá trị 1

//Chỉ số 1 có giá trị 2

//Chỉ số 2 có giá trị 3

Cập nhật Mảng

Bạn có thể gán giá trị vào phần tử một khi bạn biết chỉ số của phần tử đó thông qua ký hiệu []
Để nối vào đằng sau của mảng tử nữa thì sử dụng append(value)
Để Nối vào đuôi mảng một mảng khác cùng kiểu sử dụng toán tử +=
Nếu muốn chèn một phần tử ở vị trí index dùng phương thức insert(value, at:index)
Nếu muốn xóa bỏ khỏi mảng phần tử ở vị trí index dùng phương thức remove(at:index)
Nếu muốn xóa phần tử cuối của mảng dùng removeLast()
var products = [String]();

products.append("iphone 5")

print(products)                     //["iPhone 5"]

products += ["iPad", "Samsung"]

print(products)                     //["iPhone 5", "iPad", "Samsung"]

products[0] = "Android"

print(products)                     //["Android", "iPad", "Samsung"]

products.insert("Nokia", at:1)

print(products);                    //["Android", "Nokia", "iPad", "Samsung"]

products.remove(at:2);

print(products)                     //["Android", "Nokia", "Samsung"]

products.removeLast();

print(products)                     //["Android", "Nokia"]
Bài tiếp theo: Dictionary trong swift >>
vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!