Kotlin Cơ bản
Val và var Kiểu dữ liệu Null safety Toán tử so sánh Check kiểu và casting Cấu trúc điều khiển Visibility modifier Khởi tạo một lớp Biểu thức This Package 1 - Val và var Trong Java chúng ta khai báo biến như sau: String s ; s = "hello" ; final String u ...
- Val và var
- Kiểu dữ liệu
- Null safety
- Toán tử so sánh
- Check kiểu và casting
- Cấu trúc điều khiển
- Visibility modifier
- Khởi tạo một lớp
- Biểu thức This
- Package
1 - Val và var
Trong Java chúng ta khai báo biến như sau:
String s; s = "hello"; final String u = "hi"; //khai báo một constant
Với Kotlin, chúng ta có từ khóa var để khai báo biến và val để khai báo một constant, cú pháp sẽ là:
var s: String s = "hello" val v: String = "hi" //khai báo một constant, bắt buộc phải khởi tạo khi khai báo var u = "hey" //Có thể không xác định kiểu cho biến mà để tự compiler xác định
Note:
- Kotlin không yêu cầu dấu ; sau mỗi statement nữa
- Cơ chế giúp Kotlin tự xác định kiểu của biến gọi là Type inference, ngoài tự suy ra kiểu biến, cơ chế này còn sử dụng trong single-expression function (sẽ nói sau), làm cho boilerplate code giảm đi rất nhiều
2 - Kiểu dữ liệu
Mặc định trong Kotlin đều là đối tượng, không còn dữ liệu kiểu nguyên thủy (primitive type) nữa. Điều này giúp cho mọi biến đều sử dụng được generic, gọi được các function, property hoặc có thể gán được bằng null
Tiếp theo, chúng ta sẽ nói về các kiểu dữ liệu trong Kotlin: :
numbers characters booleans strings arrays
- Numbers :
Size Độ dài bit của từng kiểu được thể hiện trong bảng sau:
Note: character không được coi là kiểu số trong Kotlin
Constant literal Tương tự như trong Java, Kotlin cũng có các constant literal để xác định kiểu dữ liệu cho các số:
package com.corochann.helloandroidtvfromscrach; import android.os.Bundle; import android.support.v17.leanback.app.BrowseFragment; import android.util.Log; public class MainFragment extends BrowseFragment { private static final String TAG = MainFragment.class.getSimpleName(); @Override public void onActivityCreated(Bundle savedInstanceState) { Log.i(TAG, "onActivityCreated"); super.onActivityCreated(savedInstanceState); } }
(I) Build và chạy