大数据学习——scala数组
package com import scala.collection.mutable.ArrayBuffer /**
* Created by Administrator on 2019/4/8.
*/
object TestMap { def main(args: Array[String]) { //**定长数组和变长数组*************************************************
//数组常用方法 val arr = Array(1, 2, 3, 4, 5); val a1 = arr.map(_ * 10)
val a2 = arr.filter(_ % 2 != 0)
println(a2.toBuffer) //排序
val arr1 = Array(1, 4, 8, 3, 2, 6, 9, 5)
//升序
println(arr1.sorted.toBuffer)
//降序
println(arr1.sorted.reverse.toBuffer)
//升序
println(arr1.sortWith((x, y) => x < y).toBuffer)
//降序
println(arr1.sortWith((x, y) => x > y).toBuffer) //注意:如果new,相当于调用了数组的apply方法,直接为数组赋值
//初始化一个长度为1的定长数组
val arr2 = Array[Int](10)
println(arr2.toBuffer) //定义一个长度为3的定长数组
val arr3 = Array("hadoop", "storm", "spark")
//使用()来访问元素
println(arr3(0)) //变长数组(数组缓冲)
//如果想使用数组缓冲,需要导入scala.collection.mutable.ArrayBuffer包
var ab = ArrayBuffer[Int]()
//向数组缓冲的尾部追加一个元素
//+=尾部追加元素
ab += 1
//追加多个元素
ab +=(2, 3, 4, 5)
//追加一个数组++=
ab ++= Array(6, 7)
//追加一个数组缓冲
ab ++= ArrayBuffer(8, 9) //打印数组缓冲ab
println(ab) //在数组某个位置插入元素用insert
ab.insert(0, -1, 0) //在首位插入-1,0两个元素
println(ab)
//删除数组某个位置的元素用remove
ab.remove(8, 2) //从第9位开始删除两个元素
println(ab) //**遍历数组**************************************
//初始化一个数组
val arr4 = Array(1, 2, 3, 4, 5, 6, 7, 8)
//增强for循环
for (i <- arr4)
println("---" + i) //好用的until会生成一个Range
//reverse是将前面生成的Range反转
for (i <- (0 until arr4.length).reverse)
println(arr4(i)) //**数组转换**************************************
//yield关键字将原始的数组进行转换会产生一个新的数组,原始的数组不变 val arr5 = for (e <- arr4) yield e * 2
println(arr5.toBuffer)
val arr6 = arr4.map(_ * 3)
println(arr6.toBuffer) //数组常用算法 println(arr5.sum)
println(arr5.max)
println(arr5.sorted.toBuffer)
} }
大数据学习——scala数组的更多相关文章
- 大数据学习——scala类相关操作
1 类的定义 package com /** * Created by Administrator on 2019/6/3. */ //类并不用声明为public. class Person { // ...
- 大数据学习——scala入门练习
package com /** * Created by ZX on 2015/11/6. */ object VariableDemo { def main(args: Array[String]) ...
- 大数据学习——scala入门程序
安装scala.msi https://blog.csdn.net/sinat_32867867/article/details/80305302 notepad++ object HelloScal ...
- 大数据学习——scala集合练习
package com /** * Created by ZX on 2016/4/5. */ object ListTest { def main(args: Array[String]) { // ...
- 大数据学习——scala的wordCount小例子
val lines=List("hello tom hello jerry","hello tom hello kitty hello china") //方法 ...
- 大数据学习——scala函数与方法
package com /** * Created by Administrator on 2019/4/8. */ object TestMap { def ttt(f: Int => Int ...
- 大数据学习系列之五 ----- Hive整合HBase图文详解
引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环 ...
- 大数据学习系列之六 ----- Hadoop+Spark环境搭建
引言 在上一篇中 大数据学习系列之五 ----- Hive整合HBase图文详解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合 ...
- 大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解
引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单 ...
随机推荐
- Generator 和 函数异步应用 笔记
Generator > ES6 提供的一种异步编程解决方案 > Generator 函数是一个状态机,封装了多个内部状态.还是一个遍历器对象生成函数.返回<label>遍历器对 ...
- LR使用流程简介之录制方式说明
1.LR脚本录制方式说明1)HTML-based script基于HTML的脚本 从内存中读取并下载资源,较少的关联处理,可以加入图片检查,回放时需要解析返回的信息 a-基于用户行为的方式 web_l ...
- dstat参数选项
Usage: dstat [-afv] [options..] [delay [count]]Versatile tool for generating system resource statist ...
- 洛谷 P2014 选课
题目描述 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习.现在有N门功课,每门课有个学分,每门课有一 ...
- Spark 配置整理
Spark 的配置有很多,这里一方面总结一下官方文档中的内容,一方面将网上查到的资料中用到的针对特定问题的配置整理一下. 先看一下官网的配置:http://spark.apache.org/docs/ ...
- CentOS lvm
1.创建PVpvcreate /dev/sdb /dev/sdc或pvcreate /dev/sdb1 /dev/sdc1 2.查看PVpvdisplay 3.创建VGvgcreate vgdata ...
- Spring boot 集成ActiveMQ(包含双向队列实现)
集百家之长,成一家之言. 1. 下载ActiveMQ https://mirrors.tuna.tsinghua.edu.cn/apache/activemq/5.15.9/apache-activ ...
- javaweb基础(12)_session详解
一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...
- 01_1JAVA简介
01_1JAVA简介 1. Java基础 语法基础.OO.Exception.Array.基础类.I/O Stream.Collection /Generic.Thread.TCP/UDP.GUI.M ...
- 数据结构C语言实现系列——线性表(单向链表)
#include <stdio.h> #include <stdlib.h> #define NN 12 #define MM 20 typedef int elemType ...