Đếm và chỉ số
Thuộc phần Logic và luồng thực thi trong hành trình Swift của Coddy. Bài học 1 trên 56.
Bạn đã dùng str.count trong phần nền tảng để lấy số lượng ký tự. Để hiểu sâu hơn, bạn cần biết rằng String trong Swift là một chuỗi các Characters, không phải một mảng byte đơn giản.
let greeting = "Hello"
print(greeting.count) // 5
print(greeting.first!) // "H"
print(greeting.last!) // "o"
print(greeting.isEmpty) // falseBạn không thể truy cập chuỗi bằng chỉ số nguyên. Để lấy ký tự ở một vị trí cụ thể, hãy yêu cầu chuỗi trả về một index cách điểm bắt đầu của chuỗi một khoảng:
let i = greeting.index(greeting.startIndex, offsetBy: 1)
print(greeting[i]) // "e"Các thuộc tính first, last và isEmpty là những công cụ dùng hằng ngày. Chỉ dùng chỉ số khi bạn thực sự cần một vị trí cụ thể.
Thử thách
Người mớiĐọc một dòng đầu vào. In ra ba dòng:
- Số ký tự trong đầu vào
- Ký tự đầu tiên và cuối cùng, cách nhau bằng một dấu cách, ví dụ
H ovớiHello truekhi ký tự đầu tiên và ký tự cuối cùng là cùng một chữ cái, không phân biệt chữ hoa chữ thường, nếu không thì làfalse(ví dụ:Anna,RadaR)
Giả sử đầu vào có ít nhất một ký tự.
Với đầu vào RadaR, đầu ra là:
5
R R
trueTự làm thử
let line = readLine()!
// TODO: in ra số ký tự, ký tự đầu và cuối, rồi kiểm tra xem chúng có giống nhau khi không phân biệt chữ hoa, chữ thường không
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 Logic và luồng thực thi
1Chuỗi chuyên sâu
Đếm và chỉ sốChữ hoa, chữ thường và xóa khoảng trắngTìm kiếm trong chuỗiTách và nối chuỗiThay thế chuỗi conÔn tập: Kiểm tra tên người dùng4Tập hợp
Tạo tập hợpPhép hợp và phép giaoPhép trừ và hiệu đối xứngTập con và tập hợp conÔn tập: Bộ lọc thẻ7Dự án: Theo dõi thói quen
Tổng quan dự ánĐánh dấu hoàn thành10Dự án: bộ máy trắc nghiệm
Tổng quan dự ánĐặt câu hỏiTự luyện tập: Playground Swift