Kotlin学习第一章(二)

数组

上篇总结复习

上篇链接地址:Kotlin学习第一章(一)
上篇文章学习的知识:

  • 基本数据类型:包括了数值类型字符串类型
  • 数值类型Byte、Int、Long、Float、Double,没有包装类型,还要注意Long类型的标记,必须用大写的 “L”
  • 字符串类型字符串模板的使用,字符串的比较,**原生字符串"""…"""**的使用

数组

还是同样的与java对比的看,这样会更容易记住一点,老规矩,上个表格:

kotlinjava
整型IntArrayint [ ]
整型装箱Array< Int >Integer [ ]
字符CharArraychar [ ]
字符装箱Array< Char >Character [ ]
字符串Array< String >String [ ]

当然同样的Float、Double也是一样的,表格中就没有列出来了。

数组的创建

我们来分别看看java中的数组创建与kotlin的数组创建有什么不同
java

int[] c = new Int[]{1,2,3,4,5};
System.out.println(c.length);

Kotlin

//两种创建方式
//1、值创建
val c0 = intArrayOf(1,2,3,4,5) 
//2、表达式创建
val c1 = intArray(5){it+1} // 这里的5表示的是数组的大小,it是数组中对应的index下标
println(c1.contentToString()) //打印一下这个数组看看
println(c1.size)
  • 创建的方式还是有些不同的,这里的 “it” 先不用纠结,后面会经常见面的,在这里表示的就是数组中的下标。

  • 这里还有一个contentToString()
    的函数,这个函数相当于为数组量身定做的,可以很便捷的打印出数组的内容。上面的内容输出的结果为:[1,2,3,4,5] ,感觉kotlin有很多这种函数,极大的提高了效率

  • 获取数组的长度,在java中数组使用的是length ,而在kotlin中使用的则是size

数组的读写

java

String[] d = new String[]{"Hello","World"};//创建

d[1] = "Java"; //赋值

System.out.println("d[0]"+",""d[1]");//取值

kotlin

val d = arrayOf("Hello","World")//创建

d[1] = "kotlin"//赋值

println("$d[0],$d[1]")//取值

注意 : Koltin中创建数组,除了拆箱的数组外,其他的数组创建都使用 arrayOf 来创建,包括装箱的数组(例: Array< String >)或者是自定义的数组(例: Array< Person >)

读取值= 号左边有"[ ]“为赋值,右边有”[ ]"为取值 (不是一定要有**=** 号才算哦)

数组遍历

先来对比一下吧还是

java

float[] e = new float[]{1,3,5,7,9};
//第一种
for (int i = 0; i < e.length;i++){
     System.out.println(e[i]);
}
//第二种
for(float element : e){
	System.out.println(element);
}

kotlin

val e = floatArrayOf(1f,3f,5f,7f,9f)
//第一种
for(element in e){
	println(element)
}
//第二种
e.forEach {
	println(it)
}

通过对比可以看出,kotlin的遍历是通过foreach来遍历的,写起来相对java也是更加的简洁。

判断一个元素是否在数组中

java

float[] e = new float[]{1,3,5,7,9};
//测试1f在数组中
for(float element : e){
	if(element == 1f){
		System.out.println("1f exists in variable e");
		break;
	}
}
//测试1.5f不包含在数组中
boolean exists = false;
for(float element : e){
	if(element == 1.5f){
		exists = true;
		break;
	}
}
if(!exists){
	System.out.println("1.5f not exists in variable e");
}

kotlin

val e = floatArrayOf(1f,3f,5f,7f,9f)
//测试1f在数组中
if(1f in e){
	println("1f exists in variable e")
}
//测试1.5f不包含在数组中
if(1.5f !in e){
	println("1.5f not exists in variable e")
}

注意:这里有个关键字 “in” 在foreach循环中表示遍历,在条件判断中表示包含关系

对比看完发现kotlin的判断比起java的繁琐,简直不是一个感觉呀。今天的学习就到这里哇。

今日学习总结

  • 数组与java中的类型对比
  • 数组的创建方式:值创建与 表达式创建( {it+1}的创建方式
  • 数组的访问:数组的读写、遍历、包含关系
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值