Cắt mảng phần 2
Thuộc phần Kiến thức nền tảng trong hành trình Swift của Coddy. Bài học 74 trên 86.
Swift cung cấp cú pháp viết tắt tiện lợi để cắt mảng từ đầu hoặc đến cuối. Thay vì chỉ định 0 hoặc chỉ số cuối cùng một cách rõ ràng, bạn có thể để trống một phía của phạm vi.
Để cắt mảng từ đầu đến một chỉ số cụ thể, hãy bỏ qua giá trị bắt đầu:
let numbers = [10, 20, 30, 40, 50]
let firstThree = numbers[..<3]
print(firstThree) // [10, 20, 30]Tương tự, để cắt từ một chỉ số cụ thể đến cuối, hãy bỏ qua giá trị kết thúc:
let numbers = [10, 20, 30, 40, 50]
let fromIndex2 = numbers[2...]
print(fromIndex2) // [30, 40, 50]Bạn cũng có thể dùng phiên bản khoảng đóng để bao gồm một chỉ số kết thúc cụ thể:
let letters = ["a", "b", "c", "d", "e"]
let upToIndex3 = letters[...3]
print(upToIndex3) // ["a", "b", "c", "d"]Các phạm vi một phía này giúp code của bạn gọn hơn khi bạn cần vài phần tử đầu tiên hoặc mọi phần tử sau một vị trí nhất định. Hãy nhớ bọc kết quả trong Array() nếu bạn cần một mảng thông thường thay vì ArraySlice.
Thử thách
DễViết một hàm (function) splitArray nhận numbers và index, rồi trả về tất cả phần tử từ chỉ số đã cho đến cuối mảng.
Dùng toán tử phạm vi một phía (...) để lấy phần tử từ chỉ số đã chỉ định đến cuối mảng, rồi trả về kết quả dưới dạng mảng thông thường.
Tham số:
numbers([Int]): Mảng cần lấy phần tửindex(Int): Chỉ số bắt đầu (bao gồm)
Giá trị trả về: Mảng chứa tất cả phần tử từ chỉ số đã cho đến cuối mảng ([Int])
Ví dụ: Nếu numbers là [5, 10, 15, 20, 25, 30] và index là 3, hàm sẽ trả về [20, 25, 30].
Tự làm thử
func splitArray(numbers: [Int], index: Int) -> [Int] {
// Viết code tại đây
}
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức nền tảng
4Các toán tử, phần 1
Toán tử số họcToán tử moduloPhép gán kết hợpÔn tập: phép tính đơn giảnToán tử so sánh7Nhập xuất cơ bản
Hàm in raNội suy chuỗiĐầu vào từ dòngChuyển đổi kiểu dữ liệuÔn tập đến 120Ôn tập đúng hay sai3Giá trị tùy chọn
Giá trị tùy chọn là gìMở gói bằng if letGuard letToán tử gộp nilÔn tập: mở gói an toàn6Ra quyết định
Câu lệnh ifIf và elseÔn tập: máy tính đơn giảnCâu lệnh switchSwitch với khoảng giá trị9Vòng lặp
Vòng lặp for-inVòng lặp whileVòng lặp repeat-whileBreakContinueÔn tập: giai thừaDải giá trị trong vòng lặpVòng lặp lồng nhauÔn tập: đầu vào động12Kiến thức cơ bản về mảng
Khai báo mảngTruy cập phần tửChỉnh sửa mảngPhương thức của mảngÔn tập: Danh sách sản phẩmÔn tập: Mảng đảo ngượcTuple15Trình theo dõi chi tiêu hằng ngày
Tổng quan về dự ánThoát chương trìnhTự luyện tập: Playground Swift