一如以往,美图镇楼
首先大家先了解一下什么是kotlin:
Kotlin现在是Android官方支持的语言
其他的,Who care?
其实kotlin自Google 大会到现在一直炒的火热是有原因的,一方面是google爸爸的大力支持,另一方面,这个语言真的会缩减很多很多的工作量 and 号称完全避免空指针,具体能不能不知道,反正你没判断null是会报编译错误。
简单举个小例子告诉大家为什么推荐学习Kotlin编程:比如你项目中很多地方会用到复制文本功能。
funcopyContent(content:String?,context:Context?){
if(content==nullcontext==null){
return
}
if(Build.VERSION.SDK_INT
{
valclipboardManager =context.getSystemService(Context.CLIPBOARD_SERVICE)asandroid.text.ClipboardManager
clipboardManager.text= content
}
else
{
valclipboardManager =context.getSystemService(Context.CLIPBOARD_SERVICE)asClipboardManager
valclipData = ClipData.newPlainText(null,content)
clipboardManager.primaryClip= clipData
}
Toast.makeText(context,"Copy Success",Toast.LENGTH_SHORT).show()
}
当你咔咔咔都写完了,项目该用的地方也用到了。突然发现你有的复制按钮点击完会弹出自己的Dialog,提示用户注意。并不需要toast. 这个时候如果你用java的话两个选择。
后边加个boolean参数控制是否弹窗。然后改所有用到的地方。
2. 重载一个带boolean参数的方法。
Kotlin呢 其实用的是第二个方法只不过只需要这样:
funcopyContent(content:String?,context:Context?,showToast:Boolean =true){
if(content==nullcontext==null){
return
}
if(Build.VERSION.SDK_INT
{
valclipboardManager =context.getSystemService(Context.CLIPBOARD_SERVICE)asandroid.text.ClipboardManager
clipboardManager.text= content
}
else
{
valclipboardManager =context.getSystemService(Context.CLIPBOARD_SERVICE)asClipboardManager
valclipData = ClipData.newPlainText(null,content)
clipboardManager.primaryClip= clipData
}
if(showToast)
Toast.makeText(context,"Copy Success",Toast.LENGTH_SHORT).show()
}
只需要加个默认参数就可以。然后在你不需要弹出toast的方法调用处加个false就OK.是不是很干练啊!
最后 能科学上网的小伙伴给你们一个视频地址去更全面的了解下Kotlin,带中文字幕的哦:
https://www.youtube.com/watch?v=X1RVYt2QKQE
---------------Over----------------
领取专属 10元无门槛券
私享最新 技术干货