Menu
CoddyTech

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.

challenge icon

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
}
quiz iconTự kiểm tra

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

Tự luyện tập: Playground Kotlin