在kotlin中,== 表示两个字符串是否相等;=== 表示两个字符串的地址值是否相等。
fun test() { val a: String = "zhangsan" // true,值相等,对象地址相等 Log.e("test", "test" + (a === a)) //经过了装箱,创建了两个不同的对象 val strA: String? = a val strB: String? = a // false,值相等,对象地址不一样 Log.e("test", "test" + (strA === strB)) // true,值相等 Log.e("test", "test" + (strA == strB)) }//迭代
fun test() { //迭代 val str: String = "hello kotlin" for (s in str){ Log.e("print", "print" + s) } }输出结果: //包含任意字符的字符串 由三重引号(""" .... """)表示
fun test() { val str = """ 我是很多字符串 我是很多字符串 hello kotlin """ Log.e("print", "print " + str) }输出结果:
//trimMargin()函数删除前导空格,默认 | 用作边界前缀,可以选择其他字符并作为参数传入,比如 trimMargin(">")。
fun test() { val str = """ |我是很多字符串 |我是很多字符串 |hello kotlin """.trimMargin() Log.e("print", "print " + str) }输出结果: //字符串模板:字符串可以包含模板表达式 , 并且会求值并把结果合并到字符串中。
fun test() { val str1: String = "hello kotlin 我来学习了!" var str2: String = "$str1 今天礼拜三" var str3: String = "$str2 ${str1.length} 有戏!!!!!!" Log.e("print", "print " + str2) Log.e("print", "print " + str3) }输出结果:
创建数组的3个函数:arrayOf()、arrayOfNulls()、工厂函数(Array())
fun test() { //arrayOf 参数是一个可变参数的泛型对象 var arrStr = arrayOf("张三","李四","王五","马六","赵七") for (v in arrStr){ Log.e("print", "print " + v) } // arrayOfNulls指定数据类型且可以为空元素的给定元素个数的数组 var arr1 = arrayOfNulls<Int>(2) //如若不予数组赋值则arr1[0]、arr1[1]皆为null for(v in arr1){ Log.e("print", "print " + v) } }输出结果:
数组kotlin和java对比
kotlinjavaIntArrayint[]ShortArrayshort []LongArraylong[]FloatArrayfloat[]DoubleArraydouble[]CharArraychar[]