《Kotlin核心编程》 ——2 基 础 语 法

举报
华章计算机 发表于 2020/02/21 20:15:02 2020/02/21
【摘要】 本节书摘来自华章计算机《Kotlin核心编程》 —— 书中第2章,第2.1.1节,作者是水滴技术团队 。

第2章

基 础 语 法

在明白Kotlin的设计哲学之后,你可能迫不及待地想要了解它的具体语言特性了。本章我们会介绍Kotlin中最基础的语法和特点,包括:

程序中最基本的操作,如声明变量、定义函数以及字符串操作;

高阶函数的概念,以及函数作为参数和返回值的作用;

Lambda表达式语法,以及用它来简化程序表达;

表达式在Kotlin中的特殊设计,以及if、when、try等表达式的用法。

由于这是一门旨在成为更好的Java而被设计出来的语言,我们会在介绍它的某些特性的同时,与Java中相似的语法进行对比,这样可以让你更好地认识Kotlin。好了,我们现在就开始吧。

2.1 不一样的类型声明

当你学习Kotlin时,可能第一个感到与众不同的语法就是声明变量了。在Java中,我们会把类型名放在变量名的前面,如此来声明一个变量。

String a = "I am Java";

Kotlin采用的则是不同的做法,与Java相反,类型名通常在变量名的后面。

val a: String = "I am Kotlin"

为什么要采用这种风格呢?以下是Kotlin官方FAQ的回答:

我们相信这样可以使得代码的可读性更好。同时,这也有利于使用一些良好的语法特性,比如省略类型声明。Scala的经验表明,这不是一个错误的选择。

很好,我们发现Kotlin确实在简洁、优雅的语法表达这一目标上表现得言行一致。同时你也可能注意到了关于“省略类型声明”的描述,这是什么意思呢?

2.1.1 增强的类型推导

类型推导是Kotlin在Java基础上增强的语言特性之一。通俗地理解,编译器可以在不显式声明类型的情况下,自动推导出它所需要的类型。我们来写几个例子:

val string = "I am Kotlin"

val int = 1314

val long = 1314L

val float = 13.14f

val double = 13.34

val double2 = 10.1e6

然后在REPL中打印以上变量的类型,如println(string.javaClass.name),获得的结果如下:

java.lang.String

int

long

float

double

double

类型推导在很大程度上提高了Kotlin这种静态类型语言的开发效率。虽然静态类型的语言有很多的优点,然而在编码过程中却需要书写大量的类型。类型推导则可帮助Kotlin改善这一情况。当我们用Kotlin编写代码时,IDE还会基于类型推导提供更多的提醒信息。

在本书接下来展示的Kotlin代码中,你会经常感受到类型推导的魅力。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。