kotlin的基本语法于java的差异

97 阅读1分钟
  • if语句
//if语句可以进行精炼
  fun text(i: Int, ii: Int): Int {
        var sum = if (i > ii) {
            i
        } else {
            ii
        }
        return sum
    }
//同时在kotlin中可以以最后一行作为返回值
fun text(i: Int, ii: Int): Int = if (i > ii) {
        ii
    } else {
        i
    }

  • when语句
//对比于java的switch来说,没有break;
  fun wens(name: String): Int = when (name) {
            "likaijian" -> 2
            "bibs" -> 3
            else -> 1
        }
        
 可以传递不知道类型,any相当于java的object
  fun wens1(name: Any): Int = when (name) {
            is Int -> 1
            is String -> 2
            else -> 1
        }
  • for循环
//until表示右开区间 0-9  step表示递增为2 就是i += 2,downTo表示递减
//        for(i in 10 downTo  0)
  for(i in 0 until 10 step 2){
          println(i)
      }
      //foreach循环
       s1.forEach { i->
            println(i)
        }
 open class Base {
        //Open可继承开放,类默认为final  annotaion注解类  internal同一个模块可见
        //在effectivejava中明确提到如果一个类不是专门为了继承设计的,那么应该主动加上final,kotlin就对这方面的完善
        open fun f() {}
        init{
        //初始化代码块,可以一写一些逻辑
        }
    }
  • 单例模式 将class改变为object就是一个单例类