Kotlin 基础语法

项目结构

我们可以简单看一下 Kotlin 项目所包含的目录、文件。

  • Kotlin 项目中包含了许多含gradle字样的目录或文件,这些都是与构建工具 Gradle 相关的目录。要了解这些需要系统地学习 Gradle,在这里不会过多涉及,其中用的最多的是build.gradle.kts
  • Kotlin 源文件存放在src\main\kotlin中,而资源(如图片、字体等等)存放于src\main\resources中。
    // 项目结构
    untitled
    	|-- .gradle // Gradle 缓存
    	|-- .idea // IDEA 配置
    	|-- build // Gradle 构建输出内容,例如运行 Jar 任务,会在此处生成 Jar 包。
    	|-- gradle // 里边会有 wrapper,主要是指定 Gradle 版本
    	|-- src
    		|-- main
    			|-- kotlin // Kotlin 源文件
    			|-- resources // 资源
    		|-- test // 测试代码
    	|-- .gitignore // Git 忽略项配置
    	|-- build.gradle.kts // 构建脚本
    	|-- gradle.properties // 配置 Gradle 属性
    	|-- gradlew // 用于 Linux 或 MacOS 下执行 Gradle 任务
    	|-- gradlew.bat // 用于 Windows 下执行 Gradle 任务
    	|-- settings.gradle.kts // 做一些 Gradle 全局设置,管理模块等
    

包的定义和导入

定义

在我们的电脑上,需要使用文件夹来归类不同的软件、文件。在 Kotlin 中,包也是这样的作用。

  • 在 Kotlin 项目中,以“package+包名”定义源文件的包名,该语句必须写在内容的最顶端(一般情况下放在第一行,但不一定要是第一行,前面可以加空行)。
  • 源文件中的内容会属于该包下,比如main函数,其全名为ink.awning.main
  • 如果不声明包名,则为默认包名(空的)。
  • 包名一般情况下是跟所在文件夹一一对应,比如package ink.awning说明文件在kotlin\ink\awning下,如果不对应将会出现弱警告(当然,在运行时并不会抛出异常,只是容易产生混乱,这里建议Main.kt的包定义删掉,使用默认包名,不然二级及以上目录重构(重命名)时不能自动更改包名):
    包名与目录不一致的弱警告

Note:一般情况下,使用 IDEA 很少有需要管软件包的情况,我们只需要像平时新建文件、文件夹一样,右键点击某一个目录,在新建中选择 Kotlin 类/文件创建 Kotlin 源文件,或者选择软件包新建一个目录,IDEA会自动生成 Kotlin 文件的包名。将某一文件拖动到其他目录并确认,IDEA也会自动修改文件的包名。

导入

同一包下的内容,可以直接使用,如果要使用其他包中的内容,需要使用“import+名称”导入,这里的名称是全名。

// 结构
kotlin
	|-- other
		|-- Other.kt // package ink.awning.other
	|-- Inner.kt // package ink.awning
	|-- Main.kt // package ink.awning
package ink.awning

// 使用全名导入 Other
import ink.awning.other.Other

fun main() {
    // 使用同一包下的内容,无需导入
    Inner()
    // 使用不同包下的内容,需要导入
    Other()
}

如果我们需要导入一个包下的全部内容,可以用*

import ink.awning.other.*

程序入口

程序入口可以指明程序开始运行的位置。我们在运行项目时,其实是运行了Main.kt下的main函数,可以看到在main函数前有一个
播放按钮
,点击此按钮与顶栏的效果一致。
程序入口

Kotlin 支持以下两种格式的程序入口:

fun main() {}

fun main(args: Array<String>) {}

注释

注释是不会被执行的内容

// 我是单行注释,这一行都是我的。

/*
我是多行注释
括起来的几行都不会被执行
*/

句末分号

Kotlin 一个语句后边可以加分号表示该语句结束,不过通常省略掉

fun main() {
	println("Hello Kotlin!");

	// 有时候如果语句很短,我们可以把它们写在同一行,用分号隔开就行
	print("Hello"); print(" "); print("Kotlin!")
}

Note:println打印出内容后会换行,而print不会。

  • 26
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值