Kotlin Utility Functions

Từ java sang kotlin

Bài viết không đi sâu vào toàn bộ kotlin mà sẽ chỉ ra một số thay đổi từ java sang kotlin thường hay sử dụng (phù hợp với những người đang dùng java chuyrn sang kotlin).

* 1. Biến

tên java kotlin
Biến thường Int a; var a : Int
Biến khởi tạo Int a = "abc123"; var a : Int = 123
Hằng số final Int a = 123; val a : Int = 123
Mảng Int a[] = [1, 2, 3]; var a : IntArray = intArrayOf(1, 2, 3)
List List<int> a = new ArrayList<>(); var a : List<Int> = ArrayList()
static statix int a; companion object { var a:Int }

chú ý:

khác với java biến trong kotlin sẽ được kiểm tra trước khi chạy nên nếu sai về quy tắc biến chương trình sẽ báo lỗi, Quy tắc ở đây là: " biến không được phép null"

java :

khai báo biến a    ->    chạy chương trình    ->    lấy a +1    ->   ứng dụng bị dừng.

kotlin :

khai báo biến a   ->    chạy chương trình    ->    nếu a mà vi phạm quy tắ thì chương trình không thể chạy.

vậy với kotlin thì sẽ phải làm như thế nào?

câu trả lời:

var a : Int = 123 - bến đã được khởi tạo sẽ không bị null

lateinit var a : ini - báo cho chương trình biết tý nữa tôi sẽ khởi tạo biến này

var a : int? = null - báo cho chương trình biết có thể nó sẽ null

* 2. Câu lệnh

Mình chỉ liệt kê nhưng cái thay đổi trong kotlin, cái nào không thay đỏi sẽ không được nhắc đến.

trong kotlin switch được thay bằng when:
when(a){ 1 - > Log.d() 2 - > Log.d() else -> log.d() }

vòng lặp từ 1 đến 10 dấu .. thể hiện các số trong khoảng 1 đến 10:
for ( i in 1..10 ){}

vòng lặp từ 0 đến hết số lượng mảng a:
for ( i in 0 until a.length ){}

for ngược:
for ( i in 10 downto 1 ){}

for nhảy 2 phần tử:
for ( i in 1..100 steep 2 ){}

* 3. Hàm

hàm gọi:
fun tenHam(a: String){ //lệnh }

hàm trả về:

fun tenHam(a: String) : String {   
              //lệnh return a:   
}

gọi hàm này :
${tenHam("123")}

* 4 Class

class a( a : String ){     
    init{     
        //hàm khởi tạo chạy ở đây     
    }     
}     

phần a: String chính là tham số truyền vào

inner class: class 1 trong class b muốn dử dụng được biến của b thì class a phải là inner

class a( a : String ){    
    var k : String = "123"
    inner class a( a : String ){     
         var h : String =  k
    }     
}

* 5 Kế thừa

open class b( ) {   
    init{   
        //hàm khởi tạo chạy ở đây   
    }   
}   
    
class a( a : String ) : b{   
    init{   
        //hàm khởi tạo chạy ở đây   
    }   
}   

Kế thừa từ class b; class b phải có open.

* 6 Thay đổi trong android

  • id: id dẽ được gọi thằng không câng phải finViewById

  • Set Image, color. background sẽ gọi thẳng các phước thức và truyeenfd vào dạng R. (color, drawable, string) . tên

  • set text và ghét text chỉ cần gán = : vd: txtName = "acb" txt.toString.

  • setOnclick{}: có thể xử lý sự kiện trực tiếp vd: bt.setOnclickListenner{}

Registration Login
Sign in with social account
or
Lost your Password?
Registration Login
Sign in with social account
or
A password will be send on your post
Registration Login
Registration