kotlin 学习笔记(1)

1、Kotlin 不是完全面向对象的,方法可以不依附于类而存在。

2、创建对象不用new,val foo1 = fooBar() 。

3、参数和变量是 参数:类型 的形式声明。

4、返回值直接在方法头后面加上冒号再写。

5、短的方法可以直接以式子的形式在方法头后面的等号后加上,如果同时是public方法,就一定要写明返回值。

6、int写作Int,数组用Array表示,数组的初始化是 var arr = arrayOf( , , , )

7、val 相当于final 变量,var才是变量。

8、串也不用charAt找下标了,直接像数组那样用中括号[] 。

9、for(:) 改成 for( in)

10、print中不用加号+将串连接起来,直接在串中写变量,类似Linux中的${ arr} 。

11、如果类中全部是静态方法,改class为object;一般静态方法,用companion object { }包裹。

12、null检查:①类型后加?表示可为空,可以写在方法返回类型那里;②变量后加!! ,如空会抛出异常(有try catch?);③变量后加?,如空会返回null;④配合③使用,后加?:可指定返回值。

13、instance of --> is,这里会涉及到类型转换。

14、for(a:Int in 1..10) 表示范围 [1,10],不能反过来,反过来就改..为downTo;可配合使用step表示步长,until 10表示排除10即[1,10)。

15、通过索引遍历 for( a:Int in arr.indices) print(arr[i]) 相当于 for( a: Int in arr) print(a ) 。

16、标签xxx@,用于循环控制和跳转。

17、kotlin中没有简单数据类型,都是封装的,所以首字母大写。

18、===比较对象的地址,==比较对象的值(相当于equals()吧)。

19、String text = "First Line\nSecondLine\nThirdLine" 相当于

val text = """
        |First Line
          |Second Line
            |Third Line
        """.trimMargin()
其中分行是一定要的,但不用对齐,因为有trimMargin。
20、
if (object instanceof Car) Car car = (Car) object;相当于
 
if (object is Car) var car = object as Car
21、void doSomething(int... numbers);相当于
  fun doSomething(vararg numbers: Int)
22、Bean类
data class Developer(var name: String, var age: Int)
23、Array<Int> 相当于 Integer[] ,而 IntArray 相当于 int[],是否经过包装的区别。
posted @ 2018-09-20 10:52  jason31  阅读(104)  评论(0编辑  收藏  举报