Chuyển đổi kiểu dữ liệu
Thuộc phần Kiến thức nền tảng trong hành trình Kotlin của Coddy. Bài học 38 trên 93.
Vì readLine() trả về một chuỗi có thể nhận giá trị null (null khi hết đầu vào), bạn cần chuyển đổi đầu vào đó khi muốn làm việc với các số. Kotlin cung cấp các hàm chuyển đổi để biến đổi chuỗi thành các kiểu dữ liệu khác.
Để chuyển một chuỗi thành số nguyên, hãy dùng toInt():
fun main() {
val input = readLine()!!
val number = input.toInt()
println(number + 10)
}Nếu người dùng nhập "5", chương trình chuyển giá trị đó thành số nguyên 5, rồi cộng thêm 10 để được 15. Nếu không chuyển đổi, "5" + 10 sẽ nối văn bản và tạo ra "510". Chuyển đổi trước sẽ cho phép phép cộng số học.
Với số thập phân, hãy dùng toDouble():
fun main() {
val price = readLine()!!.toDouble()
println("With tax: ${price * 1.1}")
}Bạn có thể nối phép chuyển đổi ngay sau readLine()!! để code gọn hơn. Các phép chuyển đổi hữu ích khác gồm toLong() cho số nguyên lớn và toBoolean() cho giá trị boolean.
Các phép chuyển đổi này giả định rằng đầu vào hợp lệ. Nếu ai đó nhập "hello" trong khi bạn mong đợi một số, chương trình sẽ gặp sự cố. Bạn sẽ học cách xử lý những lỗi như vậy ở phần sau của khóa học.
Thử thách
DễViết một hàm calculateFutureAge nhận currentAge và yearsToAdd dưới dạng chuỗi và trả về tuổi trong tương lai dưới dạng số nguyên.
Chuyển cả hai tham số chuỗi thành số nguyên, cộng chúng lại rồi trả về kết quả.
Tham số:
currentAge(String): Tuổi hiện tại dưới dạng chuỗi (ví dụ: "25")yearsToAdd(String): Số năm cần cộng thêm dưới dạng chuỗi (ví dụ: "10")
Giá trị trả về: Tổng của cả hai giá trị dưới dạng số nguyên (Int)
Tự làm thử
fun calculateFutureAge(currentAge: String, yearsToAdd: String): Int {
// 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
4Toán tử phần 1
Toán tử số họcToán tử moduloPhép gán kết hợpToán tử so sánhÔn tập: phép tính đơn giản7Nhập xuất cơ bản
Hàm PrintlnMẫu chuỗiĐầu vào ReadLineChuyển đổi kiểu dữ liệuÔn tập: Số năm đến khi nghỉ hưuÔn tập: Đúng hay sai10Hàm
Khai báo hàmTham số và đối sốGiá trị trả vềĐối số có tênGiá trị mặc địnhHàm chỉ gồm một biểu thứcÔn tập: hàm SigmaÔn tập: hàm kiểm tra hợp lệ3Tính có thể null
An toàn với null là gìKiểu có thể nullToán tử gọi an toànToán tử ElvisCơ bản về thử thách hàmKhẳng định không nullÔn tập: truy cập an toàn6Ra quyết định
Câu lệnh ifCâu lệnh if-elseIf dưới dạng biểu thứcBiểu thức whenWhen với khoảng giá trịÔn tập: máy tính đơn giản9Vòng lặp
Vòng lặp forVòng lặp whileVòng lặp do-whileBreakContinuePhạm vi trong vòng lặpVòng lặp lồng nhauÔn tập: giai thừaÔn tập: đầu vào động12Cơ bản về danh sách
List và MutableListTruy cập phần tửChỉnh sửa danh sáchPhương thức của ListPair và TripleÔn tập: danh sách sản phẩmÔn tập: danh sách đảo ngược15Theo dõi chi tiêu hằng ngày
Tổng quan dự ánThoát khỏi chương trìnhTự luyện tập: Playground Kotlin