一天学完spark的Scala基础语法教程七、数组(idea版本)

简介: 一天学完spark的Scala基础语法教程七、数组(idea版本)

创建测试类【day1/demo7.scalc】,类型为【object】

image.png

image.png


Scala 数组

Scala 语言中提供的数组是用来存储固定大小的同类型元素,数组对于每一门编辑应语言来说都是重要的数据结构之一。


声明数组变量并不是声明 number0、number1、...、number99 一个个单独的变量,而是声明一个就像 numbers 这样的变量,然后使用 numbers[0]、numbers[1]、...、numbers[99] 来表示一个个单独的变量。数组中某个指定的元素是通过索引来访问的。


数组的第一个元素索引为【0】,最后一个元素的索引为元素总数减1。


声明数组

以下是 Scala 数组声明的语法格式:


package day1
object demo7 {
  def main(args: Array[String]): Unit = {
    var arr=Array(156,16,86,46,5,6,8346,56,61,1);
    var array = new Array[Int](10)
  }
}

数组操作

获取索引对应的值


package day1
object demo7 {
  def main(args: Array[String]): Unit = {
    var arr=Array(156,16,86,46,5,6,8346,56,61,1);
    var array = new Array(10)
    println(arr(2))
  }
}


image.png

修改索引对应的值


package day1
object demo7 {
  def main(args: Array[String]): Unit = {
    var arr=Array(156,16,86,46,5,6,8346,56,61,1);
    var array = new Array[Int](10)
    arr(2)=666
    println(arr(2))
  }
}

image.png


数组遍历

package day1
object demo7 {
  def main(args: Array[String]): Unit = {
    var arr=Array(156,16,86,46,5,6,8346,56,61,1);
    var array = new Array[Int](10)
    //数组遍历方法
    for (x <- arr){
      print(x+",")
    }
    println()
    // 计算数组所有元素的总和
    var total = 0.0;
    for ( i <- 0 to (arr.length - 1)) {
      total += arr(i);
    }
    println("总和为 " + total);
    // 查找数组中的最大元素
    var max = arr(0);
    for ( i <- 1 to (arr.length - 1) ) {
      if (arr(i) > max) max = arr(i);
    }
    println("最大值为 " + max);
  }
}


image.png

总结

到这里有关一天学完spark的Scala基础语法教程七、数组(idea版本)就结束了


Scala数组这里的用法相对来说比较讨厌,不是很容易掌握,需要多练练啊。


希望能对大家有所帮助。


欢迎一键三连,谢谢。


相关文章
|
消息中间件 分布式计算 NoSQL
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
287 0
|
消息中间件 存储 分布式计算
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
339 0
|
存储 Java Scala
Scala 数组
Scala 数组
145 1
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
312 0
|
缓存 分布式计算 大数据
大数据-90 Spark 集群 RDD 编程-高阶 RDD容错机制、RDD的分区、自定义分区器(Scala编写)、RDD创建方式(一)
大数据-90 Spark 集群 RDD 编程-高阶 RDD容错机制、RDD的分区、自定义分区器(Scala编写)、RDD创建方式(一)
273 0
spark支持2.4.3版本
信息摘要: 该版本主要发布spark-connectors 1.0.4版本,升级spark内核到社区最新稳定版本2.4.3适用客户: 企业客户/个人开发者版本/规格功能: 该版本主要发布spark-connectors 1.
983 0
|
8月前
|
人工智能 分布式计算 大数据
大数据≠大样本:基于Spark的特征降维实战(提升10倍训练效率)
本文探讨了大数据场景下降维的核心问题与解决方案,重点分析了“维度灾难”对模型性能的影响及特征冗余的陷阱。通过数学证明与实际案例,揭示高维空间中样本稀疏性问题,并提出基于Spark的分布式降维技术选型与优化策略。文章详细展示了PCA在亿级用户画像中的应用,包括数据准备、核心实现与效果评估,同时深入探讨了协方差矩阵计算与特征值分解的并行优化方法。此外,还介绍了动态维度调整、非线性特征处理及降维与其他AI技术的协同效应,为生产环境提供了最佳实践指南。最终总结出降维的本质与工程实践原则,展望未来发展方向。
413 0
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
1034 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
11月前
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
561 79
|
存储 分布式计算 算法
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
298 0