[Video Summary] Ch. 1.9 An Intro to Arrays in Swift & SwiftUI (2025)
Mô tả nhanh
Video này trình bày về cách sử dụng mảng (Arrays) trong Swift và SwiftUI. Bạn sẽ học cách tạo mảng, truy cập và thao tác dữ liệu bên trong mảng, đồng thời áp dụng kiến thức này để thêm nhiều thông điệp vào ứng dụng iOS/macOS.
Video
Mô tả chi tiết
Video này trình bày về cách sử dụng mảng (Arrays) trong Swift và SwiftUI. Bạn sẽ học cách tạo mảng, truy cập và thao tác dữ liệu bên trong mảng, đồng thời áp dụng kiến thức này để thêm nhiều thông điệp vào ứng dụng iOS/macOS.
Nội dung chính của video:
- Giới thiệu về mảng:
- Mảng là một danh sách có thứ tự các phần tử, tất cả đều phải cùng một kiểu dữ liệu (ví dụ: chuỗi, số nguyên, số thực, hoặc các kiểu phức tạp).
- Các phần tử trong mảng được truy cập thông qua chỉ số (index), bắt đầu từ 0.
- Có thể tạo mảng chứa nhiều giá trị cùng một lúc
- Thực hành với Playground:
- Tạo mảng: Sử dụng cặp dấu ngoặc vuông
[]
để tạo mảng, các phần tử được phân tách bằng dấu phẩy,
. Ví dụ:var messages = ["You are awesome", "You are great", "Fabulous, that's you"]
. - In mảng: Sử dụng
print(messages)
để in toàn bộ mảng. - Truy cập phần tử: Sử dụng
messages[index]
để truy cập phần tử tại vị tríindex
. Ví dụ:messages[0]
sẽ trả về"You are awesome"
. Cần lưu ý về zero-indexing, tức là phần tử đầu tiên có index là 0, không phải 1. - Lỗi index out of range: Lỗi xảy ra khi bạn cố gắng truy cập một phần tử không tồn tại trong mảng (ví dụ: truy cập
messages[3]
khi mảng chỉ có 3 phần tử) - Các phương thức và thuộc tính của mảng:
count
: Thuộc tính này trả về số lượng phần tử trong mảng (messages.count
).last
: Thuộc tính này trả về phần tử cuối cùng của mảng (dạngOptional
).
- Thêm phần tử vào mảng:
append(newElement)
: Thêm một phần tử mới vào cuối mảng. Ví dụ:messages.append("You are fantastic")
.+
: Thêm một mảng khác vào cuối mảng hiện tại. Cần đảm bảo cả 2 vế của+
đều là mảng.+=
: Tương tự như+
, nhưng thay đổi trực tiếp mảng ban đầu.
- Chèn phần tử vào mảng:
insert(newElement, at: index)
: Chèn một phần tử mới vào vị tríindex
. Ví dụ:messages.insert("You are skilled", at: 1)
.
- Xóa phần tử khỏi mảng:
remove(at: index)
: Xóa phần tử tại vị tríindex
và trả về phần tử đó. Ví dụ:let removedValue = messages.remove(at: 1)
.
- Tạo mảng rỗng:
- Cần khai báo rõ kiểu dữ liệu của mảng, ví dụ
var grades : [Double] = []
. Ngoài ra, có thể dùngvar grades = [Double]()
.
- Cần khai báo rõ kiểu dữ liệu của mảng, ví dụ
- Tạo mảng: Sử dụng cặp dấu ngoặc vuông
- Ứng dụng vào Project:
- Thay thế các hằng số và câu lệnh
if-else
bằng một mảng các chuỗi thông điệp. - Sử dụng biến trạng thái
@State
để theo dõi vị trí của thông điệp hiện tại trong mảng. - Cập nhật
TextView
để hiển thị thông điệp tương ứng. - Xử lý trường hợp khi hiển thị đến thông điệp cuối cùng, quay lại thông điệp đầu tiên.
- Sử dụng
messages.count
để làm cho code linh hoạt hơn khi thay đổi số lượng thông điệp. - Thêm modifier
.multilineTextAlignment(.center)
để căn giữa những dòng chữ dài.
- Thay thế các hằng số và câu lệnh
Chúc bạn có một trải nghiệm học tập và phát triển ứng dụng thật hiệu quả!