kotlin学习

JetBrains,作为广受欢迎的 Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。

目前,Kotlin已正式成为Android官方支持开发语言,所以学习kotlin势在必行。



辅助网站:

kotlin官网

他人学习笔记


class MainActivity : BaseActivity(), View.OnClickListener {

    override fun onClick(p0: View?) {

        TODO("not implemented") //To change body of created functions use File | Settings | File Templates.

    }

    fun  onso(){

    }

    override fun onCreate(savedInstanceState: Bundle?) {

        super.onCreate(savedInstanceState)

        setContentView(R.layout.activity_main)

        initview()

    }

    private fun initview() {

        TODO("not implemented") //To change body of created functions use File | Settings | File Templates.

    }

}



一样米养百种人,每个人学习kotlin方法都不一样。而我学习的方法自然是敲,多敲。

初学只能对比java来了解。

var声明变量

val声明常量

fun声明方法

protected 

for循环

for (i in 1..100) { …… } // 闭区间:包含 100

for (i in 1 until 100) { …… } // 半开区间:不包含 100

for (x in 2..10 step 2) { …… }

for (x in 10 downTo 1) { …… }

if (x in 1..10) { …… }

集合list

val list = listOf("a", "b", "c")



遇到问题:

1.butterknife和kotlin结合时候会找不到快捷生成findViewById的方法。不用管,kotlin可以直接使用。使用的时候直接打id就行。

2.页面跳转

startActivity(Intent(this, IpScript1Activity::class.java))一直没搞懂::这是什么符号。也没找到相关的,只能死记硬背了。

3.适配器

class BannerAdapter(val context: Context, datas: MutableList) :

BaseQuickAdapter(R.layout.banner_item, datas) {

override fun convert(helper: BaseViewHolder, item: BannerResponse.Data?) {

item ?:return

        helper.setText(R.id.bannerTitle,item.title.trim())

val imageView = helper.getView(R.id.bannerImage)

Glide.with(context).load(item.imagePath).placeholder(R.drawable.logo).into(imageView)

}

}


4.构造函数

data class HotKeyResponse(

var errorCode: Int,

var errorMsg: String?,

var data: List?

) {

data class Data(

var id: Int,

var name: String,

var link: Any,

var visible: Int,

var order: Int

)

}

5.常量 const val 等同public final

6.interface接口

interface CollectArticleModel {

/**

* add or remove collect article

*/

    fun collectArticle(

onCollectArticleListener: HomePresenter.OnCollectArticleListener,

id: Int,

isAdd: Boolean

)

/**

* cancel collect article Request

*/

    fun cancelCollectRequest()

}


7.继承和实现

class MainActivity : BaseActivity(),View.OnClickListener

8.for 循环

for (i  in 1..10){

}



多记录学起来会事半“弓背”

你可能感兴趣的:(kotlin学习)