- 博客(22)
- 收藏
- 关注
原创 Scala:Scala的List
例如,定义一个Stream,Stream(1,2,3)等价于1#::2#::3::Stream.empty。左折叠运算由初始值、操作符、List 和操作组成,即(z/:List)(op)等价于op(op(op(z,a),b),c)。例如 List(1,2)=11,List(3,4)=12,结合这两个集合可以使用11:::12=(1,2,3,4)。右折叠是 List 在前,即(List(a,b,e):lz)(op)等价于op(a,p(b,op(c,z)))。//3.不可变 l1(0)=100写法是错误的!
2024-11-10 23:20:23 173
原创 Scala:Scala的Map集合
val f1:Map[String,Int] = Map("苹果" -> 9,"香蕉" -> 8) //:Map[String,Int]可省略。在Scala中,有两种创建Map的方式,分别是Map(k1->v1,k2->v2,..) 和 Map((k1,v1),(k2,v2),..)。//创建 1.Map("苹果" -> 9,"香蕉" -> 8) 2.Map(("苹果",9),("香蕉",8))第二种方式 Map((k1,v1),(k2,v2),..)是通过元组的方式定义的。
2024-11-10 23:19:43 224
原创 Scala:解决空指针异常问题
在定义一个对象时,该对象会调用父类的构造器。而在父类构造器中由于变量没有赋值,实际相当于null,再通过变量(实际为null)调用方法时就会出现空指针异常的问题。解决空指针异常的方式有两种,分别是提前定义和懒加载。
2024-11-06 22:59:24 191
原创 Scala:Scala的Map集合习题
1.创建一个可变 Map ,用于存储图书馆中的书籍信息(键为书籍编号,值为包括书籍名称、作者、库存数量的元组),初始化为包含几本你喜欢的书籍信息。4.修改某本书籍的库存数量(假设可以通过键找到对应的元组并修改其中的值,这里体现可变 Map 的特性)。3.根据书籍编号查询某一本特定的书籍信息,使用 get 方法,并输出结果。6.遍历图书馆书籍 Map ,并打印出每本书的信息。2.使用+=操作符添加两本新的书籍到图书馆集合中。5.使用﹣=操作符从图书馆集合中删除一本书。
2024-11-06 22:57:21 172
原创 Scala:Scala的Set集合
/ val set4=set3++immutable.Set("数学","语文","英语","体育")val xiaoming=mutable.Set("数学","语文","英语")val xiaohua=mutable.Set("语文","英语","体育")// val set1=immutable.Set("数学","语文","英语")// val set1=mutable.Set("数学","语文","英语")// set1++=mutable.Set("语文","思政","体育")
2024-11-06 22:56:37 400
原创 scala中的trait
Scala中的trait是一种类似于接口(interface)的概念,但它允许有实现代码(即默认方法)。特质(Trait)主要用于提供一种模块化的设计模式,可以包含抽象方法、常量、字段以及具有的方法。:trait中可以包含默认方法,即提供了部分实现,如果子类选择重写该方法,可以提供自定义的行为;当你想要定义一组相关的抽象方法,或者想让多个类共享一些公共代码但避免重复,Scala的trait是一个强大的工具。:Scala支持多重trait继承,这意味着一个类可以同时实现多个trait,这有助于组合行为。
2024-10-24 09:01:40 149
原创 scala email util
Scala email util是一个用于处理电子邮件的实用程序,它允许用户使用Scala编写代码来发送和接收电子邮件。例如,我们可以使用Scala的类型推断和样例类来编写更简洁的代码,并使用Scala的并发库来异步发送和接收邮件。其中,case class Message(sender: String, recipient: String, body: String)定义了一个电子邮件消息类型,而message2和message3则是两个不同的电子邮件消息实例。
2024-10-16 19:53:39 187
原创 scala 转义 \. 什么意思
在Scala中,转义字符’\‘表示反斜杠字符’'的转义。因为反斜杠字符在Scala中也是一个特殊字符,所以如果你想在字符串中使用反斜杠字符,你需要使用两个反斜杠字符来表示一个反斜杠字符。例如,如果你想在字符串中使用路径分隔符,你可以这样写:val path = “C:\Users\username\Documents”。这里的双反斜杠字符表示一个反斜杠字符。
2024-10-16 19:50:56 80
原创 Scala中,reduce, fold, 和 sorted
: 这个函数主要用于将集合中的元素通过某种累积规则(比如加法、乘法、最大值查找等)组合成单个结果。它从左到右遍历集合,并应用给定的二元操作函数(如。:这个函数用于返回一个排序后的集合副本,原集合不会改变。对于List,SortedSet或SortedMap,,但是从右到左遍历集合。这个在某些上下文中可能会更自然,尤其是当操作需要在每个元素上依赖之前的结果时。直接按元素自然顺序排序;而对于自定义类型的序列,需要提供一个比较器(Comparator)。
2024-10-15 15:04:50 333
原创 Scala的函数式编程
下面我们来学习一下scala中最重要的内容,函数式编程,其实我们学习Scala这门语言就是因为它的这一个特性,咱们在最开始的时候给大家演示了,使用java代码实现函数式编程是很复杂的,而使用scala代码实现函数式编程就很轻松,很简单了。在Scala中,函数与类、对象一样,都是一等公民,所以说scala的面向过程其实就重在针对函数的编程了,所以称之为函数式编程。刚才是我们自己实现的高阶函数,其实我们在工作中自己定义高阶函数的场景不多,大部分场景都是去使用已有的高阶函数。
2024-10-15 14:10:38 317
原创 scala编程
Scala是一种强大的、静态类型的函数式编程语言,它融合了面向对象和函数式编程的特点,旨在提供高度的生产力和代码复用。:Scala强大的模式匹配能力,能让你对数据结构进行细致的操作,类似于C#的switch语句,同时也可以用于函数参数和case类的构造。这使得Scala支持更丰富的行为组合。:Scala允许在需要的地方自动转换类型,无需显式声明,这对于简化API和提高代码的简洁性非常有用。:Scala支持将函数作为参数传递和返回,这是函数式编程的核心特性之一,提高了代码的灵活性和模块化。
2024-10-08 16:50:33 365
原创 Scala递归
Scala中的递归是一种函数或方法在其自身内部调用自身的编程技术。它主要用于解决可以分解成相似子问题的问题,如树形结构的遍历、数列求和等。(Base Case):这是递归结束的条件,当满足这个条件时,函数不再调用自身,而是直接返回结果。如果没有基本情况,递归将无限循环。(Recursive Case):这是问题规模缩小的情况,函数会调用自身并传递一个更小的输入。这个过程会持续直到达到基本情况。
2024-09-29 18:00:29 238
原创 Scala函数
sliding函数:从第一个元素开始,每个元素和它后面的 size - 1 个元素组成一个数组,最终组成一个新的集合返回,当剩余元素不够 size 数,则停止 \n该方法,可以设置步进 step,第一个元素组合完后,下一个从 上一个元素位置+step后的位置处的元素开始。inits函数:对集合中的元素进行 init 操作,该操作的返回值中, 第一个值是当前序列的副本,包含当前序列所有的元素,最后一个值是空的,对头尾之间的值进行init操作,上一步的结果作为下一步的操作对象。
2024-09-29 17:51:56 466
原创 Scala:scala的类
假设定义一个Person类,类中可以p1、p2等不同的对象。从面向对象编程的角度来说,每个人都可以看成是Person类的一个对象。scala中的成员属性可以理解为是一个变量,可以使用val或者val关键字定义属性。匿名类:指没有名字的类,可以利用接口和抽象类的名字创建匿名文件。-------无参普通类的定义-------普通类:通过class关键子定义的类。-------无参普通类-------对象:对象是类的具体实例,是具体的。内部类:在普通类中创建另一个类。类(内部类):对类的属性封装。
2024-09-26 07:58:56 145
原创 Scala:如何在IDEA中安装scala插件
------scala的while和do...while语句的返回值的区别--------------scala与Java的if语句的不同点--------------scala中如何实现break的效果--------------scala的do...while语句--------------scala带卫语句的for语句--------------scala带返回值的for语句--------------scala的while语句--------------scala的for语句-------
2024-09-25 10:54:28 455
原创 安装Scala后,如何开始学习Scala编程?
熟悉Scala环境:首先,确保你已经正确安装了Scala及其运行环境。对于初学者来说,可以考虑安装Scala的集成开发环境(IDE),如IntelliJ IDEA或ScalaIDE,它们提供了代码编辑、调试和项目管理的便捷工具。参与项目实践:加入开源Scala项目或自己创建项目,这样可以在真实场景中应用Scala,并学习如何利用它的高级特性,比如并发编程、类型系统和宏等。深入学习和进阶:Scala拥有丰富的库和框架,如Akka、Play、Scala.js等,你可以根据自己的兴趣和需要选择进行深入学习。
2024-09-11 20:13:22 374
原创 Scala安装
1.IDEA在线安装Scala插件 打开IDEA--->左上脚File--->Settings--->选中Plugins--->选择MarketPlace--->搜索Scala--->点击绿色的Install按钮--->等待联网下载安装--->安装完成重启IDEA。配置scala的环境变量:window左下角搜索环境变量--->编辑环境变量--->系统环境变量--->添加到path下面--->一步一步确定完即可。1、Scala需要Java运行时库,安装Scala需要首先安装JVM虚拟机,推荐安装JDK8。
2024-09-08 19:12:02 451
原创 一步教你学会Scala语言的helloworld
我们也可以通过创建一个 HelloWorld.scala 的文件来执行代码,HelloWorld.scala 代码如下所示。") // 输出 Hello World。vi HelloWorld.scala使用vi编辑器编写scala文件。* 以下程序将输出'Hello World!/* 这是我的第一个 Scala 程序。
2024-09-03 22:21:33 193
原创 Scala入门
什么是ScalaScala是Scalable Language两个单词的缩写,表示可伸缩语言的意思。从计算机的角度来讲,Scala是一门完整的软件编程语言,那么连在一起就表。
2024-09-03 20:05:38 169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人