在Java中调用Kotlin类的参数默认值对应的重载问题

嘎子 Android, Kotlin 2017-06-02 468 次浏览 , ,
现在Android Studio中原生支持Kotlin了,全我们之前的项目一般都是用Java写的,所以在Android Studio中经常会遇到Java与Kotlin交互的问题。 在使用Java调用Kotlin时,多数行为都是和我们对Kotlin的预期是一样的,对于我来说,有一点让我比较费解:那就是在Kotlin写一个有默认参数值的方法,在 Java 中只会有一个所有参数都存在的完 整参数的方法可见。 阅读全文...

将现有Android Studio项目转化为Kotlin项目

嘎子 Android, Kotlin 2017-06-01 886 次浏览 ,
现在Android Studio支持Kotlin了,大家是不是激动的不要不要的,是不是想现在就开始用Kotlin进行编程,不要Java了。。。人总是这样,喜新厌旧!!!不过Kotlin是有自己的吸引人的地方,下面就带领大家尝试一下将自己的项目转变一下。 一、将项目导入Android Studio 3 这个本来不想讲的,结果自己在导入的时候遇到了一个问题,解决方案如下:Android Studio 3.0的does not support the forTasks() method on BuildActionExecuter错误。 阅读全文...

Android Studio 3.0的does not support the forTasks() method on BuildActionExecuter错误

嘎子 Android 2017-06-01 962 次浏览
Android Studio 3.0出来后迫不及待的试用了一下,国内的网络不太通畅,所以第一次打的时候可以会耗费一点时间,安装你几个更新什么的,更新之后想要再测试一下自己的程序,出现了以下错误: Error:Failed to complete Gradle execution. Cause: The version of Gradle you are using (3.3) does not support the forTasks() method on BuildActionExecuter. Support for this is available in Gradle 3.5 and all later versions. 阅读全文...

Kotlin中如何实现类似Java或C#中的静态方法

嘎子 Android, Kotlin 2017-05-28 758 次浏览 , , , , , , ,
大家可以在网络上搜到不少这样的文章,官方推荐是包级函数,也有人说用伴生对象(companion class)。这些都是不错的选择,但并不完善,我们在不同的情况下有更好的选择。我总结了几种方法,分别是:包级函数、伴生对象、扩展函数和对象声明。这需要大家根据不同的情况进行选择。 一、包级函数 Kotlin和Java及C#不同的是,可以在包里面直接声明函数。做法和类中是一样的,这里就不多说了,的确是一个非常好的选择。适用于函数不需要不包内部的类进行数据共享的方法。 阅读全文...

阿里云IoT套件中MQTT协议的使用

嘎子 其他开发 2017-05-28 792 次浏览 ,
今天,阿里云给我发来邮件,说我申请的IoT套件已经可以申请了,虽然我不记得自己什么时候申请过了,但请我试用就试用一下呗。我看这个阿里云的这个东东有两个节点,一个是“华东2节点”,还有一个是“杭州节点”。这两个节点的接入方法好像有什么不太一样,但具体自己也没有搞太清楚,由于自己是分配在了“华东2节点”,所以自己只研究了华东2节点。 至于建产品,建设备什么的我就不说了,官方的文档这些还是说的挺清楚的,我想说的主要问题是aliyun的MQTT协议与公开的MQTT协议有什么不同。在阅读此文章之前,我默认的认为读者是有一定的MQTT 阅读全文...

Kotlin中的When表达式

嘎子 Android, Kotlin 2017-05-28 434 次浏览 ,
如果之前有其他语言(如Java、C#等)的开发基础,那么在阅读和使用Kotlin时基本没有太大障碍,但有一个关键词是Kotlin中新出现的,那就是when。其实when并不是很难理解,把when当作switch的高级版本就可以了。其实想想switch的语法与用法,将switch换成when从语义上反而更好理解。 如果你觉得Kotlin仅仅是将switch换成when,那你就在错特错了,Kotlin大大增强的when的功能。之前在使用switch时不知有没有过疑问,在多分支时switch明明比if好用,但有时却不得不用if,因为switch的局限性比较大,switch只能对int类型的变量使用,现在Kot 阅读全文...

Kotlin中的data类–为数据而生,为数据而美

嘎子 Android, Kotlin 2017-05-27 500 次浏览 ,
我们在写程序时,不可避免的会进行数据的操纵。在进行数据操纵时,我们会专门的编写一些类。如果这些类写的多了,你会发现这些类都有一些比较类似的特点,因为这些特点的存在,Kotlin很人性化的将这些东西总结出来,让程序员可以减少大量的工作。 费话不多说,先看个例子。这个例子在也赶个时髦,说说Kotlin那些事 也用过,为了充分体现Kotlin的优越性,会将Kotlin代码与Java代码进行比较: 阅读全文...

Kotlin常用资源整理–不间断更新

嘎子 Android, Kotlin 2017-05-27 410 次浏览
如果大家英文比较好Kotlin Programming Language是个很好的选择。但是网络还是有点慢的。 当然,自从Kotlin成为Android的官方语言之后,Kotlin的中文站肯定也会越来越多的人关注:Kotlin 语言中文站。这个站是非常不错的,基本完整翻译了 阅读全文...

半小时入门Kotlin中的Lambda表达式

嘎子 Android, Kotlin 2017-05-26 719 次浏览 , , ,
在开始这个教程之前,我还是很有压力的,怎么样才能把这个问题说明白,真是挺让我头疼的。 先给大家来点基础知识吧:

一、函数式编程

有人说
也许继"面向对象编程"之后,"函数式编程"会成为下一个编程的主流范式(paradigm)。未来的程序员恐怕或多或少都必须懂一点。
阅读全文...

在Android Studio 3中使用Kotlin

嘎子 Android, Kotlin 2017-05-26 1,165 次浏览 , ,
Android Studio 3中让Kotlin成为了默认语言,所以自己迫不及待的试用了一下,结果还是很让人激动的。 先分享一个Android Studio的下载地址:获取 Android Studio 预览版 | Android Studio。这个地址是Google专门来给中国使用的,不用翻墙。 我先建了一个工程,当然有新建工程的时候要勾选“Include Kotlin Support”,然后新建了工程后打开主文件,发现并没有什么区别嘛!特意对比了一下,第一个是Kotlin的类,第二个是Java的类: 阅读全文...

也赶个时髦,说说Kotlin那些事

嘎子 Android, Kotlin 2017-05-25 1,876 次浏览 , ,
自己之前很长时间都在用C#来进行桌面的编程,所以非常喜欢C#那种简洁、简单的语言风格。虽然有很多人在说C#的效率有问题(当然,Microsoft也一直在说C#的效率还是很高的),也有人说其跨平台的特性很差,但自己还是非常喜欢用C#,只有一个原因,它非常简单,可以让我用极少的代码完成“大部分”的工作。 最近自己也在做一些Android的开发,用java写一些东西,虽然说java也是一门非常完善的高级语言,但对java有一特性还是非常不爽的。 我总结了几点,C#和java的让我最接受不了的东东: 阅读全文...

在GPRS模块(SIM800C)和STM32芯片上实现MQTT协议

嘎子 其他开发 2017-05-18 1,137 次浏览 , , ,
最近真是的好一个劲的折腾,算是完全搞明白了如何在STM32上实现MQTT协议了。 一、本教程中说明的内容 先说说本文化的适用范围吧: 一、使用的芯片是STM32F103C8T6,但是并没有任何与平台相关的代码,应该在所有STM32芯片中都是可以用的。 二、本文使用的是SIM800C模块,驱动是用C++实现的,基于ARM mbed平台写的。但是从原理上来讲,C和C++差别不大,本文的代码经过修改也可以直接用于其他平台的使用。 阅读全文...

VisualGDB项目的移植问题

嘎子 其他开发 2017-05-15 187 次浏览 , , ,
很多人可能还不知道VisualGDB是什么东东,我给大家普及一下(自己的理解,不对勿喷): 1、VisualGDB是一个Visual Studio插件。 2、VisualGDB让Visual Studio具备了嵌入式开发、Linux开发、Android开发的能力。 阅读全文...
回顶部