云星数据---Scala实战系列(精品版)】:Scala入门教程004-Scala数组详解003

来源:互联网 发布:mac 终端删除文件夹 编辑:程序博客网 时间:2024/05/08 22:54

11.查看数组的类型

scala> val arr=Array("zhangsan","lisi","wangwu","zhaoliu")arr: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)arr.getClassres26: Class[_ <: Array[String]] = class [Ljava.lang.String;

12.数组的尾部追加单个元素,返回一个新的数组

scala> val arr1 = Array("zhangsan", "lisi", "wangwu", "zhaoliu")arr1: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)//返回新的数组scala> arr1:+"jack"res36: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu, jack)//原数组不变scala> arr1res41: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)

13.数组的尾部追加数组元素,返回一个新的数组,’:+’将整个数组添加到最后一个元素上。

scala> val arr1 = Array("zhangsan", "lisi", "wangwu", "zhaoliu")arr1: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> val arr2 = Array("jack", "lily")arr2: Array[String] = Array(jack, lily)//返回一个新的数组scala> arr1:+arr2res42: Array[java.io.Serializable] = Array(zhangsan, lisi, wangwu, zhaoliu, Array(jack, lily))//原来数组不变scala> arr1res43: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)

14.数组的尾部追加数组元素,返回一个新的数组,’++’将两个数组的合并成一个新的数组

scala> val arr1 = Array("zhangsan", "lisi", "wangwu", "zhaoliu")arr1: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> val arr2 = Array("jack", "lily")arr2: Array[String] = Array(jack, lily)//返回一个新的数组,两个数组元素的合并scala> arr1++arr2res44: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu, jack, lily)//原来数组不变scala> arr1res45: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)

15.数组排序,返回一个新的数组,原来数组不会发生任何改变,如果数组的元素是数字,默认从小到大排序。

scala> val arr=Array(3,5,8,9,4)arr: Array[Int] = Array(3, 5, 8, 9, 4)//返回一个新的数组scala> arr.sortedres1: Array[Int] = Array(3, 4, 5, 8, 9)//原数组不变scala> arrres2: Array[Int] = Array(3, 5, 8, 9, 4)

16.数组排序,返回一个新的数组,原来数组不会发生任何改变,如果数组的元素是字符或字符串,默认按字母从小到大排序。

scala> val arr = Array("zhangsan", "lisi", "wangwu", "zhaoliu")arr: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> arr.sortedres3: Array[String] = Array(lisi, wangwu, zhangsan, zhaoliu)scala> arrres4: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)

17.数组的反转,返回一个新的数组,原来数组不会发生任何改变

scala> val arr=Array(3,5,8,9,4)arr: Array[Int] = Array(3, 5, 8, 9, 4)//返回一个新的数组scala> arr.reverseres9: Array[Int] = Array(4, 9, 8, 5, 3)//原数组不变scala> arrres10: Array[Int] = Array(3, 5, 8, 9, 4)

18.数组的zip操作一,返回一个新的数组,原来数组不会发生任何改变

//1.定义两个数组scala> val arr1 = Array("zhangsan","lisi","wangwu","zhaoliu")arr1: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)//2.返回一个新的数组scala> val arr2 = Array(18,20,19)arr2: Array[Int] = Array(18, 20, 19)//3.原来数组不会发生任何改变scala> val arr3 = arr1.zip(arr2)arr3: Array[(String, Int)] = Array((zhangsan,18), (lisi,20), (wangwu,19))scala> arr1res0: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> arr2res1: Array[Int] = Array(18, 20, 19)

19.数组的zip操作二

//1.定义两个数组scala> val arr1 = Array("zhangsan","lisi","wangwu","zhaoliu")arr1: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> val arr2 = Array(18,20,19)arr2: Array[Int] = Array(18, 20, 19)//2.返回一个新的数组scala> val arr4= arr2.zip(arr1)arr4: Array[(Int, String)] = Array((18,zhangsan), (20,lisi), (19,wangwu))

20.判断数组为空

scala> val arr=Array("zhangsan","lisi","wangwu","zhaoliu")arr: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> arr.isEmptyres24: Boolean = false

21.判断数组不为空

scala> val arr=Array("zhangsan","lisi","wangwu","zhaoliu")arr: Array[String] = Array(zhangsan, lisi, wangwu, zhaoliu)scala> arr.nonEmptyres25: Boolean = true
阅读全文
0 0