# Kiến thức cơ bản về ngôn ngữ Kotlin cho Android (Android) > var vs val, null safety, data classes, biểu thức when, extension functions, scope functions và các khái niệm Kotlin cơ bản - 24 câu hỏi phỏng vấn - Junior - [Câu hỏi phỏng vấn: Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van.md) ## 1. Sự khác biệt giữa 'var' và 'val' trong Kotlin là gì? **Câu trả lời** 'var' khai báo một biến mutable (có thể thay đổi), trong khi 'val' khai báo một biến immutable (chỉ đọc). Khuyến nghị sử dụng 'val' theo mặc định để khuyến khích tính bất biến và tránh bug. ## 2. Toán tử '?' sau một kiểu trong Kotlin có nghĩa là gì? **Câu trả lời** Toán tử '?' chỉ ra rằng biến có thể chứa null. Ví dụ, 'String?' có nghĩa là biến có thể là String hoặc null. Đây là cơ sở của hệ thống null safety của Kotlin. ## 3. Toán tử '!!' trong Kotlin làm gì? **Câu trả lời** Toán tử '!!' (not-null assertion) buộc trình biên dịch coi một giá trị nullable là non-null. Nếu giá trị là null, một NullPointerException sẽ được ném ra. Chỉ sử dụng khi bạn chắc chắn rằng giá trị không phải null. ## Còn 21 câu hỏi nữa - Toán tử Elvis '?:' trong Kotlin được dùng để làm gì? - Data class trong Kotlin là gì? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Android khác - [Nền tảng Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-fundamentals.md): 24 câu hỏi, Junior - [UI và Tài nguyên Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-ui-and-resources.md): 30 câu hỏi, Junior - [Vòng đời Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-lifecycle.md): 30 câu hỏi, Junior - [Điều hướng Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-navigation.md): 26 câu hỏi, Junior - [Quản lý Dữ liệu Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-data-management.md): 29 câu hỏi, Junior - [Networking Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-networking.md): 29 câu hỏi, Junior - [Kiểm thử Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-testing.md): 28 câu hỏi, Junior - [Android Gradle](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-gradle.md): 26 câu hỏi, Junior - [Room Database](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-room-database.md): 25 câu hỏi, Mid-Level - [Xử lý nền](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-background-work.md): 18 câu hỏi, Mid-Level - [Jetpack Compose](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-compose.md): 28 câu hỏi, Mid-Level - [Quyền và Tính năng Thiết bị](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-permissions-and-device.md): 21 câu hỏi, Mid-Level - [Firebase cho Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-firebase.md): 23 câu hỏi, Mid-Level - [Android MVVM Architecture](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-mvvm-architecture.md): 18 câu hỏi, Mid-Level - [Mạng Android Nâng Cao](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-networking-advanced.md): 13 câu hỏi, Mid-Level - [Collections và Toán tử Kotlin](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-kotlin-collections-operators.md): 20 câu hỏi, Mid-Level - [Kotlin Coroutines và Flow](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-kotlin-coroutines-flow.md): 20 câu hỏi, Mid-Level - [Dependency Injection trong Android](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-dependency-injection.md): 15 câu hỏi, Mid-Level - [Android MVI Architecture](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-mvi-architecture.md): 17 câu hỏi, Mid-Level - [Android Clean Architecture](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-clean-architecture.md): 21 câu hỏi, Senior - [Android Compose Nâng cao](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-compose-advanced.md): 17 câu hỏi, Senior - [Android Performance and Monitoring](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-performance-monitoring.md): 13 câu hỏi, Senior - [Android Security and Privacy](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-security-privacy.md): 18 câu hỏi, Senior - [Android CI/CD and Release](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-cicd-release.md): 15 câu hỏi, Senior - [Android UX and Form Factors](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-ux-form-factors.md): 18 câu hỏi, Senior - [Android Testing Advanced](https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-testing-advanced.md): 18 câu hỏi, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/vi/technologies/android/cau-hoi-phong-van/android-kotlin-language-essentials