2.2 Hello World
标签(空格分隔): kotlin基础教程
2.2.1 环境搭建
环境搭建
2.2.2 Hello World
现在,我们使用Kotlin语言编写一个经典程序入门示例,向控制台打印Hello World
fun main(args:Array<String>){
println("Hello World")
}
我们能够看到控制台上输出了
Hello World
现在根据这个示例来说明一下基本语法:
fun这个关键字用来定义方法也就是通常说的函数,fun关键字后面main为方法名,括号中的内容是参数列表,其中参数列表的语法是(参数名:参数类型,参数名:参数类型,…..)其中参数对长度不定。当你把一个方法写成了fun main(args:Array<String>)
的方式之后,该方法就成为了程序的入口方法,因为JVM会识别到此方法,并在运行时调用。println()
是一个将参数内容打印到控制台的方法。
2.2.3 包(Package)
在上述环境搭建时,我们已经接触到了包的概念。包是一个命名空间概念,什么是命名空间?简单理解字面意义就是这是名称集合的基本单位。Kotlin中的命名规则是不允许有重复的文件名称。所以,在同一个命名空间不能出现重复的类名,如果我们需要另一个名称相同的类时,我们能做的就是将这两个类划分到不同的命名空间,也就是说使用不同的包存储。
创建一个包是很简单的:只要包含一个package命令作为一个Kotlin源文件的第一句就可 以了。该文件中定义的任何类将属于指定的包。package语句定义了一个存储类的名字空间。 如果你省略package 语句,类名被输入一个默认的没有名称的包
package foo.bar
fun baz() {}
class Goo {}
包名在存储时采用的是文件目录方式。
接下来我们演示如何如何使用相同的类名:
package package1
class Demo {
fun hello() {
println("Hello")
}
}
package package2
class Demo {
fun world() {
println("world")
}
}
fun main(args:Array<String>){
package1.Demo().hello()
package2.Demo().world()
}
输出结果
Hello
world
2.2.4 import关键字
从上述例子可以看出,当我们想要使用一个其他命名空间的类时,需要写出完整的类路径名,可是如果需要用到的这种类很多怎么办,用起来岂不是很麻烦。为了解决这个问题,我们引入了一个关键字import。这个关键字的作用就是将其他命名空间的文件引入到此文件,就好像是这些类和方法是在该命名空间声明的一样。举个例子:
当我们想打印出当前时间我们可以这么写:
fun main(args:Array<String>){
println(java.util.Date())
}
当我们使用了import后就可以这么写:
import java.util.Date
fun main(args:Array<String>){
println(Date())
}
这样一来,我们就不需要在每次写Date的时候都写那么长的包名了。
当我们需要引入一个包下的许多类,那么是不是就要写很多的import语句?这里我们介绍一种范围指定方式import java.util.*
这里的*
是通配符,表示可以匹配所有java.util包下的文件。于是我们可以这样写:
import java.util.*
fun main(args:Array<String>){
println(Date())
//生成一个随机数
println(Random().nextInt())
}
我们就不需要写成以下这种形式了
import java.util.Date
import java.util.Random