安卓利用kotlin的变长参数与伴生对象写出java可以调用的静态方法
最近在学习kotlin,发现java真的是太啰嗦了,而且好多功能无法优雅的实现,目前的功能是获取10个edittext中的文字并且打成json上传到服务器,由于java中没有变长参数的概念,所以封装工具类不是特别的方便,代码写出来就是这个样子的= =(请忽略我的命名方式)
由于想到了kotlin中有变长参数的概念,所以我想起了用kotlin封装一个工具类,那么开始,导入kotlin的支持
dependencies {implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" }在gradle的最上面添加apply plugin: 'kotlin-android'
好了,大功告成,开始敲码
创建一个kotlin文件,如果类不需要传入参数,那么就直接声明class就好,当然,如果我们想要像java一样写出静态方法,类名直接调用,但是在kotlin没有静态方法和static关键字,怎么办呢,其实kotlin为我们提供了companion object,也就是伴生对象,和java,这个对象里面的方法类似于java的静态方法,最后,记得参数前面加vararg关键字,代表的是变长参数
这样,一个kotlin的工具类就做好了,值得一提的是,如果想在java中调用,记得在类名后加Companion,否则是调不到这个方法的,这个Companion指向的就是我们的伴生对象
这样一看,是不是舒服多了,当然kotlin的用法不止这些,我现在也只是浅显的了解了一些,还需要加强学习,希望可以帮到有同样需求的人,本人能力有限,望轻喷= =