Wednesday, October 4, 2017

Chú ý với khai báo mảng Swift

Có nhiều cách khai báo mảng trong Swift, khi dùng sẽ dẫn đến các cách dùng khác nhau.
Nếu bạn khai báo mảng như sau
var ar = [Int]()
Sau đó cho các phần tử vào
ar[0]=1
ar[1]=2
Thì khi truy xuất để gọi các giá trị ra sẽ bị lỗi, để thêm phần tử vào buộc phải dùng append
ar.append(1)
Nếu bạn khai báo mảng như sau.
var ar=[Int](count: 8, repeatedValue: 0)
Lúc này mảng được tạo ra đã có sẵn 8 phần từ là các số 0. Nếu bạn thêm phần tử vào bằng lệnh append.
ar.append(1)
Lúc này số 1 sẽ trở thành phần tử thứ 9, quên mất điều này khiến bạn không hiểu tại sao đã thêm các số khác vào mà khi lấy các phần từ đầu nó cứ ra số 0.
Để tránh điều này, ta không dùng append mà thêm vào bằng cách
ar[0]=1
Lúc này số 0 đã được thay thế bằng phần tử mới thêm vào.
Nếu khai báo mảng như sau:
var ar = NSMutableArray(capacity: 15)
Lúc này, ta không thể dùng append mà phải thêm các phần tử vào bằng cách
ar[0]=1

ar[1]=3

No comments:

Post a Comment