【Kotlin入门之路】基础语法

Hello World

老规矩,让我们怀念一下——用Kotlin输出Hello, World!

fun main() {
	println("Hello World")
}

和其他语言相似,Kotlin也是以main()函数作为程序运行的入口的。

变量声明

Kotlin声明变量使用两个关键字:valvar

  • val:声明一个值不可更改的变量。可以在声明的适合初始化,也可以先声明后初始化,一旦初始化,就不能再对它重新赋值,否则报错。可以把使用这个声明的变量理解为一个“常量”。
  • var:声明一个值可更改的变量。

提到变量声明,不得不说变量的类型。Kotlin内置众多数值类型:

关键字范围
Int
Byte
Short
Long
Float
Double

Kotlin中声明变量的语法——变量类型写在变量名后面:

val constant: Int = 1 /* 声明一个名为constant的Int型的“不可变”变量 */
var variable: Byte /* 声明一个名为variable的Byte型的“可变”变量 */

注意:Kotlin语句不使用;(分号)结尾。(当然,加上似乎也不会报错)
建议:明确valvar的使用,优先考虑使用val

函数声明

函数的声明使用fun关键字(和JavaScript相似),下面声明了一个没有返回值的函数:

fun myFunc() {
	// TODO
}

有返回值的怎么声明呢?参考变量的声明:

fun myFunc(): String  {
	return "Hello Kotlin"
}

当然,Kotlin支持这么玩:

fun myFunc(): String  {
	return if (true) {
		"True"
	} else {
		"False"
	}
}

上面这个有点类似于C/C++语言中的冒号表达式condition ? true : false(很可惜,Kotlin不支持这个)。

还可以这么玩

fun myFunc(): String = if(true) {
		return "True"
	} else {
		return "False"
	}

这种情况可以看成是将return关键字用=替换了。
很容易推想出,需要给传入参数的话,这么定义:

fun myFunc(id: Int): String = if(id) {
		return "True"
	} else {
		return "False"
	}

匿名函数

Kotlin支持匿名函数。匿名函数就是没有函数名称的函数。
举个例子:
定义一个匿名函数:

val strLenFunc: (String) -> Int = { input ->
	input.length
}

该函数完成的功能是接收一个字符串类型的变量输出,然后输出它的长度(类型为整型值)。
调用该匿名函数:

val strLen: Int = strLenFunc("Kotlin")

不难看出,除了定义的时候有些奇特,调用匿名函数的时候跟普通函数差不多。

高阶函数

函数也是分阶级的。一个函数可以将另一个函数当作参数,将其他函数用作参数的函数称为高阶函数
举个例子:

fun strMapper(str: String, mapper: (String) -> Int): Int {
	return mapper(str)
}

类的声明和定义

和C++、Java一样,是通过关键字class来完成。
如果没有显示声明,类中出现的变量、函数的访问类型均为public,即可从外部访问。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值