Kotlin基础:Use与Let 的区别:

1、Use   用于确保即使发生错误也可以关闭资源。它只能在实现Closeable接口的对象上调用,使用use函数,不需要调用close。

例如:

db.query(url,null,null,null,null).use{

        it?let{

        while(it.moveToNext){

                }

        }

}

2、Let 将原始对象或代码块作为参数传递到 Lambda 表达式中,返回值为代码块的最后一行或者指定return的返回值。

场景:对于可空对象的判空处理;对操作对象做一些行为的操作,且通常不改变对象的属性

1、context.let{

        it.getIntent()

}

2、str="fkdj"

        str.let{

                Log.d(TAG,"result:$str")

                tvName.text=str

        }

你可能感兴趣的:(开发语言,kotlin)