Scala编程入门:函数式编程实践指南

4星 · 超过85%的资源 需积分: 9 206 下载量 185 浏览量 更新于2024-07-22 收藏 1.56MB PDF 举报
"Scala编程语言实践指南" Scala是一种功能强大且灵活的编程语言,具有面向对象和函数式编程的特点。本书提供了一个实用的入门指南,涵盖了Scala的核心类型、语法、高阶函数、不可变数据结构等方面的内容。 **核心类型和语法** Scala的核心类型包括数字、字符、字符串、布尔值、数组、列表、元组等。这些类型都是 Scala的基础,理解它们是学习Scala的关键。本书详细介绍了这些类型的特点、用法和相互转换。 **表达式和条件语句** 表达式是Scala的基础语法单元,它可以是字面量、变量、函数调用或操作符表达式等形式。本书详细介绍了表达式的各种形式、优先级和结合性,并提供了大量的示例代码。 **函数编程** 函数是Scala的核心概念之一,本书详细介绍了函数的定义、调用、递归和高阶函数等方面的内容。高阶函数是Scala的特色之一,它允许函数作为参数传递或作为返回值返回。 **不可变数据结构** 不可变数据结构是Scala的另一个特色之一,本书详细介绍了列表、数组、元组等不可变数据结构的特点和用法,以及如何使用这些结构来编写高效、可靠的代码。 **对象oriented编程** Scala是一种面向对象的编程语言,本书详细介绍了类、对象、trait、继承和多态等方面的内容。读者可以学习如何定义类、创建对象、使用继承和多态来编写灵活、可维护的代码。 **实践指南** 本书提供了大量的实践示例和练习题,读者可以通过这些示例和练习来练习和提高自己的编程技能。同时,本书还提供了详细的语法notation和convention,帮助读者更好地理解Scala的语法和编程风格。 本书提供了一个全面的Scala编程语言指南,涵盖了Scala的核心类型、语法、高阶函数、不可变数据结构、对象oriented编程等方面的内容,是一种非常实用的Scala学习资源。

Exception in thread "main" java.lang.RuntimeException: java.lang.NoSuchFieldException: DEFAULT_TINY_CACHE_SIZE at org.apache.spark.network.util.NettyUtils.getPrivateStaticField(NettyUtils.java:131) at org.apache.spark.network.util.NettyUtils.createPooledByteBufAllocator(NettyUtils.java:118) at org.apache.spark.network.server.TransportServer.init(TransportServer.java:95) at org.apache.spark.network.server.TransportServer.<init>(TransportServer.java:74) at org.apache.spark.network.TransportContext.createServer(TransportContext.java:114) at org.apache.spark.rpc.netty.NettyRpcEnv.startServer(NettyRpcEnv.scala:118) at org.apache.spark.rpc.netty.NettyRpcEnvFactory$$anonfun$4.apply(NettyRpcEnv.scala:454) at org.apache.spark.rpc.netty.NettyRpcEnvFactory$$anonfun$4.apply(NettyRpcEnv.scala:453) at org.apache.spark.util.Utils$$anonfun$startServiceOnPort$1.apply$mcVI$sp(Utils.scala:2237) at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:160) at org.apache.spark.util.Utils$.startServiceOnPort(Utils.scala:2229) at org.apache.spark.rpc.netty.NettyRpcEnvFactory.create(NettyRpcEnv.scala:458) at org.apache.spark.rpc.RpcEnv$.create(RpcEnv.scala:56) at org.apache.spark.SparkEnv$.create(SparkEnv.scala:246) at org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:175) at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:257) at org.apache.spark.SparkContext.<init>(SparkContext.scala:432) at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2509) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:909) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:901) at scala.Option.getOrElse(Option.scala:121) at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:901) at com.cssl.scala720.KafkaSparkStreamingHBase$.main(KafkaSparkStreamingHBase.scala:28) at com.cssl.scala720.KafkaSparkStreamingHBase.main(KafkaSparkStreamingHBase.scala) Caused by: java.lang.NoSuchFieldException: DEFAULT_TINY_CACHE_SIZE at java.lang.Class.getDeclaredField(Class.java:2070) at org.apache.spark.network.util.NettyUtils.getPrivateStaticField(NettyUtils.java:127) ... 23 more Process finished with exit code 1

2023-07-24 上传