中国空间站的意义/网址怎么弄
第一个代码
hello world
//主函数的基本格式
fun main(args: Array<String>) {//接受参数名是:args,数据类型字符串println("hello world")//打印语句,语句后的分号可写可不写
}
变量与输出
变量与容器
var 用来声明变量
不同类型的数据,最好是放在对应的容器中.
//变量的声明与使用
fun main(args: Array<String>) {//函数入口,固定写法var name ="李四"name ="lll" // var用于声明变量,kotlin会自动匹配类型
// name = 123 输入这个语句会存在报错 ,这个name变量已经是“String”类型了。
// 现在放入123整数 自然报错了println(name)
}
常见容器的类型
类型名 | 存储值范围 | Bit(位数) |
---|---|---|
Byte | 整数 -128~127 | 8bit |
Short | 整数 - 32768~32767 | 16bit |
Int | 整数 -2147483648~1247483647 | 32bit |
Long | 整数 19位左右的正负数(-9223372036854775807~9223372036854775807) | 64bit |
Float | 小数,小数点可以精确到6位 | |
Double | 小数,小数点可以精确到15-16位 | |
String | 字符串 ,用“”双引号 引起的都可以存 |
类型推断
Kotlin 会自动根据赋值提供相应容器
当然 也可以使用显式的指定数据类型
//kotlin 会自动根据赋值提供相应容器 但是赋值后,再为其赋其他的值,就可能会报错
fun main(args: Array<String>) {var i=18i=19
// i=999999999999 //此时会报错,因为这个数已经超过了int的存值范围var j=999999999999 //此时j就是存放的长整型的容器了var s="String" var k:Int =99 // 这是允许显示规定类型的
// var t:Byte=128 因为Byte最大是127 赋值128会发生报错}
常量
用val 关键字表示,赋值后不可以在更改它的值 ,表示这个是只读的
val PI=3.1415926
// PI=3.14 会发生报错
变量的取值范围
上面的表格已经写出来了,这里是在代码中找到的
fun main(args: Array<String>) {val aByte:Byte=Byte.MAX_VALUEval bByte:Byte=Byte.MIN_VALUEprintln("Byte的最大值:"+aByte)println("Byte的最小值:"+bByte)val aLong:Long=Long.MAX_VALUEval bLong:Long=Long.MIN_VALUEprintln("Long的最大值:"+aLong)println("Long的最小值:"+bLong)val aDouble:Double=Double.MAX_VALUEval bDouble:Double=Double.MIN_VALUEprintln("Double的最大值:"+aDouble)println("Double的最小值:"+bDouble)var aInt:Int=0b0011 //用二进制赋值0bprintln(aInt)
}
打印的结果如下:
Byte的最大值:127
Byte的最小值:-128
Long的最大值:9223372036854775807
Long的最小值:-9223372036854775808
Double的最大值:1.7976931348623157E308
Double的最小值:4.9E-324
3
函数
Mian函数
程序的入口函数,最先运行。
打印菱形
fun main(args: Array<String>) {//直接打印法....println(" *")println(" ***")println(" *****")println("*******")println(" *****")println(" ***")println(" *")
}
打印结果*********
****************
//感觉很蠢的一个例子
//下面的这些函数没得返回值,也没有参数
fun main(args: Array<String>) {//调用函数 实现模块化打印printoneStar()printthreeStar()printfiveStar()printSevenStar()printfiveStar()printthreeStar()printoneStar()
}
fun printoneStar(){println(" *")
}
fun printthreeStar(){println(" ***")
}
fun printfiveStar(){println(" *****")
}
fun printSevenStar(){println("*******")
}
当然结果同上
Boolean 运算
true -真; false -假;
fun main(args:Array<String>){var num3=Math.sqrt(5.0)-Math.sqrt(4.0)//这里使用了数学类中的开方var num4=Math.sqrt(4.0)-Math.sqrt(3.0)println(num3>num4)var num5=Math.pow(2.0,100.0)//使用了数字类中的pow函数var num6=Math.pow(3.0,74.0)//需要传入两个DOuble类型的参数 同时返回一个doubleprintln(num5>num6)println(num5)println(num6)}
运行结果
false
false
1.2676506002282294E30
2.0275559590445257E35
//这个函数 a,b是两个参数,都是Int类型的
//返回值也是Int类型的 小括号外的:后面就是返回值类型
fun Add(a:Int,b:Int):Int
{return a+b
}var num1=2var num2=3println(Add(num1,num2))
打印结果5
函数加强
函数可以理解成是一个或者一组功能的组合
Kotlin函数编写规则
fun 函数名(参数名:参数类型):返回值类型{函数体}
Array:表示字符串数组
Demo:简易计算器
fun main(args:Array<String>){var a=8var b=2println("a+b="+Plus(a,b))println("a-b="+Sub(a,b))println("a*b="+Mutl(a,b))println("a/b="+Devide(a,b))
}
//加法
fun Plus(a:Int,b:Int):Int{return a+b
}
//减法
fun Sub(a:Int,b:Int):Int{return a-b
}
// 乘法
fun Mutl(a:Int,b:Int):Int{return a*b
}
//除法
fun Devide(a:Int, b:Int ):Int{return a/b
}运行结果
a+b=10
a-b=6
a*b=16
a/b=4