Đầu vào từ dòng
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 33 trên 86.
Đến nay, các chương trình của bạn đều dùng giá trị ghi sẵn trong code. Để chương trình có tính tương tác, bạn cần nhận đầu vào từ người dùng. Trong Swift, hàm readLine() đọc một dòng văn bản từ đầu vào tiêu chuẩn.
let input = readLine()
print(input)Có một chi tiết quan trọng ở đây: readLine() trả về một chuỗi tùy chọn (String?), không phải chuỗi thông thường. Vì có thể không còn đầu vào nào để đọc, trong trường hợp đó readLine() trả về nil. Với một dòng trống, hàm trả về chuỗi rỗng "", không phải nil. Bạn cần mở gói giá trị một cách an toàn trước khi sử dụng:
if let name = readLine() {
print("Hello, \(name)!")
}Dùng if let để đảm bảo bạn chỉ xử lý đầu vào khi readLine() trả về một giá trị thay vì nil. Bạn sẽ thường xuyên dùng cách đọc đầu vào và mở gói an toàn này khi xây dựng các chương trình tương tác.
Thử thách
DễViết một hàm greetUser nhận name và trả về lời chào được cá nhân hóa.
Hàm mô phỏng việc bạn sẽ làm sau khi mở gói đầu vào an toàn từ readLine(). Với một tên, hãy tạo và trả về chuỗi lời chào.
Tham số:
name(String): Tên của người dùng
Giá trị trả về: Lời chào theo định dạng: Hello, [name]!
Tự làm thử
func greetUser(name: String) -> String {
// Viết code ở đâ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