Kotlin笔记

基础语法

1.main alt+/ 生成

    fun main(args: Array<String>) {
    	println("1q2");
    	f1("公园");
    }

2.函数

    //注意Int开头大写,不是int
    fun f1(placeName:String):Int{
    	var diary = "今天晴空万里,我们一起去${placeName}旅行!";
    	println(diary);
    	return 1;   
    }
    
    //求和函数,等于=相当于return
    fun add(a:Int,b:Int):Int = a+b;

3.switch改为when,还支持String类型

    when(score){
		"45"-> "5";
		"40" -> "4";
		else -> "else";
	}

4.for循环

    var nums = 1..30
    println(nums.count());
    for(a in nums){
    	println(a);
    }
    
    for(a in nums step 2){
    	println(a);
    }
  1. ?表示允许为null
    !!表示非空时才执行
    var str1 = readLine(); //输入的是字符串,可能是null
    var str2 = readLine();
    var a:Int = str1!!.toInt();  //非null时才执行,避免了空指针异常NullPointerException
    var b:Int = str2!!.toInt();
    println("${a}+${b} = ${a+b}");

6.大整数相乘

    var n: BigInteger = BigInteger("100");
    var i:BigInteger = BigInteger.ONE;
    var sum:BigInteger = BigInteger.ONE;

    while(i < n){  //注意kotlin代码没有for( ; ; ) 循环
        sum *= i
        i++
    }
    println(sum);

面向对象

抽象类和接口
相同点:
都不可以实例化
都可以继承
都包含抽象方法
派生类必须要实现抽象方法
不同点:
接口只能包含抽象方法,不含有属性、构造函数等等
抽象类不仅有抽象的方法,也有其他的方法,属性可有可无
接口所有成员都是public,没有private
接口可以继承多个

抽象类

    //抽象类
    abstract class People(){
        abstract fun eat()
    }
    
    //继承,必须要加()括号
    class Man(var age:Int): People() {
        override fun eat(){
            println("我喜欢吃肉");
        }
    }
    
    //测试函数
    fun main(args: Array<String>) {
        var a = Man(35);
        a.eat()
        println(a.age);
    }
    

接口

    //接口 ,没有abstract
    interface Wash{
        fun washDishs()
    }
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值