KotlinKotlin精讲-黑马程序员(原创)深入浅出Android

kotlin精讲-第2章(2)函数和数据类型入门

2017-11-29  本文已影响303人  739c8d412b4c

难度指数:★☆☆☆☆

惊喜指数:★★☆☆☆


主函数和打印输出函数

main函数

一个Kotlin脚本文件里面的main函数,我们可以叫主函数,也可以叫做入口函数。一个Kotlin脚本文件里面如果包含了main函数,那么就会出现一个Kotlin图标,提示可运行。

如果我们把main改为main1,你会发现,Kotlin图标就没有了。


我们来解释下main函数:

fun 函数标识
main 函数名称
args 形参
Array<String> 形参类型
{println(“Hello World”)} 函数主体

有基础的同学,是不是感觉少了一个什么呢?是的,没有找到方法返回类型修饰符。因为main函数没有返回值,所以可以省略返回类型修饰符。完整的写法,参考如下代码:

fun main(args: Array<String>):Unit {
    println("Helloworld")
}

这里有一个细节同学们发现了吗?是的,Kotlin的每一行代码的最后不用加上分。

【Kotlin相比于Java不用在语句后面加上分号】是不是减少了一些代码量呢(偷笑)。有的同学想,才一个分号,就谈上代码量的减少了(偷笑)。Kotlin站在Java之上,相比于Java,同样的功能,更少的代码量是必须的,后续还有很多地方,可以减少代码的编写。使用Kotlin,相比于Java代码量少了,大概算的上Kotlin优于Java 20%的理由(大笑)。

这里还有一个细节,同学们发现了吗?是的,Java里面的main函数,都是定义在一个具体的类里面。【Kotlin相比于Java,在Kotlin中,main方法不用放在一个类里面,可以独立存在】是不是挺有意思,关于函数,Kotlin还有很多特别之处,后面我们一一讲解。

println函数

为什么掌握println函数的使用很重要?在Kotlin基础学习阶段,我们需要频繁使用屏幕输出,用来验证代码执行结果,所以我们先掌握println函数。

println的作用是什么?选中println,按住Ctrl,查看println源码Console.kt可以知道,println()就是输出内容到控制台,并且换行,官方因为注释如下。

/** Prints the givenmessage and newline to the standard output stream. */

查看Console.kt的Structure结构视图,可以得知println()函数接收的参数类型是很丰富的。【Kotlin相比于Java,println()函数可以直接打印数组,集合,这点比Java打印输出便捷一些。】

image.png

print函数

println()输出内容的时候带换行符,print()函数输入内容的时候不带换行符。参考如下代码:

fun main(args: Array<String>) {
    println("黑马程序员")
    print("为莘莘学子改变命运而讲课")
    print(",")
    print("为千万人少走弯路而著书!")
}

运行结果:

image.png

数据类型入门

任何语言都有自己的数据类型,Java语言里面的数据类型包含基本类型和引用类型。在Java里面存储数值、字符、布尔值可以使用基本数据类型也可以使用引用类型。

Kotlin则不区分基本类型和引用类型,统一都是引用类型。为了表示数值、字符、布尔值、数组、集合等,Kotlin帮我们定义了很多类型。我们也可以称帮我们定义好的这些类型为“内置类型”。

我们也可以把数值、字符、布尔值这些相对基础、简单的类型称为“基本内置类型”。把数组、集合此类相对复杂的类型称为“复杂内置类型”。

我们这里先介绍“基本内置类型”,“复杂内置类型”则放到后面章节去讲解。

“基本内置类型”我们通过一张表汇如下:

类型 描述 长度 示例
Byte 字节 8位 var a: Byte = 1
Short 短整型 16位 var b: Short = 1
Int 整型 32位 var c: Int = 1
Long 长整型 64位 var d: Long = 1L
Float 浮点型 32位 var e: Float = 1f
Double 双精度浮点型 64位 var f: Double = 1.0

函数入门

什么是函数?函数就是具有特定功能的一段独立小程序,函数也称为方法。函数可以将功能代码进行封装,便于对该功能进行复用,提高了代码的复用性,函数只有被调用才会被执行。

Kotlin中函数的结构是怎样的呢?

image.png

函数有哪些类型呢?函数从参数角度,可以分为有参函数以及无参函数;从返回值角度,可以分为有返回值的函数以及没有返回值的函数。

那么函数一共就有4种类型,无参无返回值、无参有返回值、有参无返回值、有参有返回值。参考如下代码:

//无参无返回值
fun myFun1() {
    println("outerFun")
}
 
//无参有返回值
fun myFun2(): String {
    return"innerFun"
}
 
//有参无返回值
fun myFun3(content: String) {
   println(content)
}
 
//有参有返回值
fun myFun4(content: String): String {
    returncontent
}
当然,没有返回值的函数,也可以明确指定返回值类型为Unit。
//无参无返回值
fun myFun1():Unit{
    println("outerFun")
}
 
//有参无返回值
fun myFun3(content: String) :Unit {
    println(content)
}

当然,【 Kotlin相比于Java,在函数方面还有一些增强,比如命名参数,默认参数。】这些内容我们放到后面一些给大家讲解。

idea编辑技巧

当然,方法的输入也可以使用idea给我们定义好的模板


capture-2 (2).gif image.png
上一篇 下一篇

猜你喜欢

热点阅读