[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

Click vào hình dưới để mở:

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:

  1. 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
  2. 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ạng Optional).
    • 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ùng var grades = [Double]().
  3. Ứ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.

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ả!