- 博客(36)
- 收藏
- 关注
原创 编辑器的使用
在 vim 中,默认启用语法高亮。- /pattern:查找 `pattern`(按 `n` 查找下一个,`N` 查找上一个)。- vim 支持丰富的插件,可以通过插件管理器(如 Vundle、Pathogen)扩展功能。3. 输入 :%s/hello/world/g,将文件中所有的 hello 替换为 world。- :%s/old/new/g:全局替换 `old` 为 `new`。:%s/old/new/g | 全局替换 old 为 new。- 在此模式下可以执行复制、粘贴、删除、保存等操作。
2025-02-28 16:04:09
458
原创 linux常用命令
创建文件夹:mkdir 空格 目录名 mkdir -p 目录名/目录名。1.移动文件 ===>把一个文件移动到另一个位置。ll -a:显示当前目录下的文件,包括隐藏文件。2.文件名重命名 ===>把一个文件改个名字。local host:主机名,当前电脑的名字。#:命令提示符,从这个位置开始输入命令。删除文件夹:rm -r 文件夹名称。ls:列出目录内容,包括参数-l。ll:用来显示当前目录下的文件。强制删除:rm - f 目录。删库跑路:rm -rf /*cd:用来进入指定的目录。
2025-02-21 16:02:26
175
原创 如何安装虚拟机
稍等一下,选择中文语言,继续,找到安装位置并进入,直接完成,开始安装,设置密码(自定义),安装完成重启虚拟机。二:安装完成之后,点击文件心建虚拟机,选择自定义,下一步,点击下一步,选择稍后安装操作系统,选择完成下一步,客户端操作系统Linux,版本(Centos 7 64位),下一步,虚拟机名称自定义,运行位置自选,下一步,处理器数量(1),每个处理器内核数量(1),一直点下一步到最后完成。用来在自己的电脑上安装虚拟机。如果安装VMware17.6时,提示缺少文件,再来安装它,否则不用。
2025-02-19 11:37:53
174
原创 泛型特质的应用
//泛型特质的应用场景//作比较找出最大值//定义一个函数,用来求List元素中的最大值object Test4 { def getMax[T](list: List[T])(implicit ev: T => Ordered[T]): T = { list.reduce((a: T, b: T) => if (a > b) a else b) } case class Pat(name: String, age: Int) // 为Pat提供一个基于
2024-12-12 09:26:20
138
原创 scala的泛型特质的应用场景
//泛型特质的应用场景//作比较找出最大值 //定义一个函数,用来求List元素中的最大值参考代码:object Test4 { def getMax[T](list:List[T])(implicit ev:T => Ordered[T]): T = { list.reduce((a:T,b:T)=> if(a>b) a else b) } def main(args: Array[String]): Unit = { val rs1 = ge
2024-12-12 09:20:54
441
原创 scala的泛型应用场景
用代码表示泛型类://泛型:类型参数化//Pair约定一对数据class Pair[T](var x:T,var y:T)//class 类名(成员名:数据类型)--->class 类名[泛型名](成员名:泛型名)/.参考代码:/1.泛型类object Test2{ def main(args: Array[String]): Unit = { val p1 =new Pair[Int](1,2) val p2 =new Pair[Double](1.0,2.
2024-12-12 08:56:12
392
原创 Scala的抽象类
Scala的抽象类成员包括成员属性和方法。Scala的成员属性有抽象的和非抽象的,而Java中只有非抽象的。对于成员方法,Scala和Java中都可以由抽象的,但是在定义时,Scala不需要abstract关键字来修饰。定义:抽象类是一个不能被实例化的类。无论是在Scala中还是在Java中都不可以直接创建对象,抽象类通过子类创建对象。1.Scala的抽象类定义。2.Scala的抽象类语法。3.Scala的抽象类成员。Scala的抽象类概述。
2024-12-11 20:58:52
401
原创 Scala的Array多维数组
val arr5 = Array.ofDim[Int](2,2)//2行2列。var arr7 = arr6.grouped(3)//3个元素一组。println(s"第一个元素是:${rs(0)}")//2.3把一维数组转化为二维数组。//2.2访问数组的元素。//2.1 创建方式1。
2024-12-11 20:57:28
217
原创 Scala正则表达式的基本组成部分
a+` 可以匹配 `a`、`aa`、`aaa` 等,但不能匹配空字符串;例如,`a` 匹配字符 `a`,`[abc]` 匹配 `a`、`b` 或者 `c` 中的任意一个字符,`[a-z]` 匹配从 `a` 到 `z` 的任意一个小写字母。例如,`(ab)+` 表示 `ab` 这个组合至少出现1次,如 `ab`、`abab`、`ababab` 等符合要求。例如,`^` 表示匹配行首,`$` 表示匹配行尾。`^abc` 表示匹配以 `abc` 开头的行,`abc$` 表示匹配以 `abc` 结尾的行。
2024-12-11 20:55:11
339
原创 Scala的迭代器
无论底层集合的具体结构如何,只要能获取到迭代器,就可以使用相同的hasNext和next方法来遍历元素。zip方法用于将两个迭代器的元素按顺序组合成一个新的迭代器,其中每个元素是一个包含两个迭代器对应位置元素的元组。如果两个迭代器的长度不同,zip操作会在较短的迭代器耗尽时停止。迭代器采用延迟计算的方式,它不会将整个集合加载到内存中,而是在每次调用next方法时才计算并返回下一个元素。返回一对迭代器,它们可以独立遍历原始迭代器中的元素序列。take 只处理当前开始的,指定数量的元素,返回一个新的迭代器。
2024-12-11 20:54:12
243
原创 Scala中求汉罗塔游戏
1.基本情况(直接能求的):f(1,"A","B","C"),可以直接求,从A ---->C。记:f(n,"A","B","C")表示n个盘子从A柱子上移动到C柱子上,借用B柱子的过程。f(要移动的盘子的个数,起点,辅助柱子,终点)
2024-12-11 20:53:05
323
原创 隐式函数的定义
/隐式转换:编译器自动的,偷偷的,把数据类型从A->B 有可能会成功,有可能会失败。//特点:1.自动被调用 2.重要的是:函数名字不重要,参数类型和返回值类型。// //把Int类型,转换成Double类型。//隐式函数:implict修饰的函数。//重要的是:参数类型和返回值类型。//implicit 隐式转换。// //隐式转换失败。// //隐式转换失败。
2024-12-10 18:06:43
204
原创 隐式转换函数
/第二步: 定义一个隐式转换函数,把BaseUser --> PowerUser。//第一步:定义一个有updateuser功能的类 PowerUser。u1.updateUser()//添加一个新的功能。
2024-12-10 18:05:45
226
原创 scala中的泛型
/getMiddleEle(List(1,2,3,4,5)) ==> 5/2 = ==>下表为2的元素是:3。//getMiddleEle(List(1,2,3,4)) ==> 4/2 = ==>下表为2的元素是:3。//List[Int]:List是列表. [Int]是说列表中的每一个元素都是int!//def 函数名(参数名:类型):返回值类型 ={// 用它来获取当前的列表的中间位置上的值。// 中间位置的下标 = 长度/2。//类型参数---泛型(数据类行是变化的)
2024-12-10 18:03:40
215
原创 Scala中List
/ l1.insert(2,150)//在指定位置添加。// val rs = l1.contains(2)// 判断元素2是否在l1中。// l1.remove(0) // 删除指定位置上的元素。// l1 -= 150//删除指定的元素。// l1 += 4 //在尾部添加。//6.判断元素是否存下。// //6.判断元素是否存在。//5.删除 --不行。// //2.输出第一个元素。// //5. 删除 -=// //4.添加 +=// // 8.遍历输出。
2024-11-07 08:59:22
360
原创 Scala中Map集合的应用
val books = mutable.Map("001" ->("三国演义","罗贯中",23),"002"->("彷徨","鲁迅",12))println(s"编号:${k},书籍名称,作者,库存数量:${v}")books += ("003"->("水浒传","施耐庵",43))books += ("004"->("西游记","吴承恩",49))books("002") = ("彷徨","鲁迅",100)
2024-11-05 18:03:24
294
原创 用Scala中的Set集合解决图书馆书籍管理系统相关的练习
val books1= mutable.Set("彷徨","三国演义","水浒传")val books = mutable.Set("彷徨","钢铁是怎样炼成的")val rs = books.contains("水浒传")books -= "钢铁是怎样炼成的"books += "十宗罪"books += "水浒传"
2024-11-05 16:32:09
374
原创 Scala中Set集合的定义
Scala的Set集合是没有重复的对象集合,所有元素都是唯一的。Scala的集合分为可变和不可变两种。默认情况下,Scala使用的是不可变集合,如果想使用可变集合,需引用scala.collection.mutable.Set包,默认使用scala.collection.immutable.Set包。
2024-11-05 15:05:00
190
原创 设计一个point类,其x和y坐标可以通过构造器提供。提供一个字类LablePoint,其构造器接收一个标签值和x,y坐标
class Point(var x:Double,var y:Double){ override def toString: String = { s"x=${x},y=${y}" }}class LabelPoint(var label:String,x:Double,y:Double)extends Point(x,y){ override def toString:String={ s"label${label},x=${x},y=${y}" }}object
2024-10-22 17:17:30
186
原创 在Scala中用代码表示trait的加载顺序
/2.有多个父构造器,按从左到右的顺序,先执行左边的父构造器,再执行右边的父构造器。//先执行父构造器,再执行子构造器。
2024-10-22 17:14:10
227
原创 scala的trait
println(s"${age}岁,${height}大高个,${hair}")val height =180 // val 不可以修改,var可以修改。// val 修饰的,可以用override重写。//特质可以有抽象属性,具体属性,抽象方法,具体方法。// var 修饰的,可以直接赋值。println(s"嘴角微微扬起")//具体属性可以重写(可选)//具体属性可以重写(可选)//抽象属性,要具体实现。//抽象方法,要具体实现。//抽象属性(没有=)//抽象方法(没有=)
2024-10-22 17:13:17
224
原创 Scala的函数自变量
在这个例子中,我们定义了一个新的函数add2,它接受一个整数参数并调用了之前定义的add函数,并指定了第一个参数为2。使用下划线作为占位符,我们实现了对函数add的部分应用。Scala中函数为头等公民,你不仅可以定义一个函数然后调用它,而且你可以写一个未命名的函数字面量,然后可以把它当成一个值传递到其它函数或是赋值给其它变量。使用下划线作为占位符,我们还可以方便地进行部分应用函数的操作。当函数字面量只有一个参数时,可以省略参数列表的括号。在上面的代码中,我们省略了参数列表的括号,直接使用x作为参数。
2024-10-17 00:05:51
350
原创 Scala的class和object类
类中的方法是实例方法,对象中的方法相当于静态方法。class和object的一个差别是,单例对象不带参数,而类可以.因为你不能用new关键字实例化一个单例对象,你没有机会传递给它参数。class和object的一个差别是,单例对象不带参数,而类可以.因为你不能用new关键字实例化一个单例对象,你没有机会传递给它参数。类只会被编译,不能直接执行,类的声明和主构造器在一起被声明,在一个类中,主构造器只有一个.类和它的伴生对象可以相互访问其私有成员,class中的main方法没什么用了。
2024-10-15 18:18:41
238
原创 用Scala语句打印数字1-100,每行包括一组5个数,每组换行
def main(args:Array[String]):Unit={for (i<=1<= to <= 100){print (s"$i\t" )1£(i%5==0) {printin ( )}} }
2024-10-15 18:13:30
118
原创 Scala的继承和多态
println(s"${leg} 条腿的 ${age} 岁的 Dog run.....")// val ----->override val xxx = 新值。// var ----->直接赋值。//重写父类的同名方法:override。d1.run() //自己写的。d1.say() //继承的。
2024-10-15 15:46:59
204
原创 用scala给成绩排序
var s1= new Test3("小花1",100)var s2= new Test3("小花2",120)var s3= new Test3("小花3",90)var s4= new Test3("小花4",88)
2024-10-15 14:38:44
158
原创 Scala的函数字面量
在这个例子中,我们定义了一个新的函数add2,它接受一个整数参数并调用了之前定义的add函数,并指定了第一个参数为2。使用下划线作为占位符,我们实现了对函数add的部分应用。Scala中函数为头等公民,你不仅可以定义一个函数然后调用它,而且你可以写一个未命名的函数字面量,然后可以把它当成一个值传递到其它函数或是赋值给其它变量。使用下划线作为占位符,我们还可以方便地进行部分应用函数的操作。当函数字面量只有一个参数时,可以省略参数列表的括号。在上面的代码中,我们省略了参数列表的括号,直接使用x作为参数。
2024-10-10 08:55:58
397
原创 Scala的单例对象应用场景
/var l1 =new Logger() 构造函数添加了private,所以在类的外部有无法访问。println(l1==l2)// true,说明这个对象是唯一的。//单例模式:让一个类只能产生一个对象。//唯一个方式可以去访问这个对象。
2024-09-24 17:51:13
226
原创 Scala的class类和 object类
继承:在Scala中,我们可以扩展一个Scala类,使用与Java中相同的方式设计继承的类(使用extends关键字),但有两个限制:方法重写需要override关键字,只有主构造函数可以通过参数调用基类构造函数。让我们扩展上面的类,并增加一个类的方法。Scala单例对象是十分重要的,没有像在Java一样,有静态类、静态成员、静态方法,但是Scala提供了object对象,这个object对象类似于Java的静态类,它的成员、它的方法都默认是静态的。定义一个类后,可以使用关键字new来创建一个类的对象。
2024-09-24 15:37:13
178
原创 Scala的循环
/ 定义变量 positive,并赋初值0,用于统计正数个数。// 定义变量 negative,并赋初值0,用于统计负数个数。// 在do后的花括号中编写循环语句,统计正数个数和负数个数。// 请在 Begin-End 间编写代码。// 请在 Begin-End 间编写代码。// 请在 Begin-End 间编写代码。// 使用 for 循环输出所有的水仙花数。// 定义变量 i,用于统计循环次数。// 在while后判断终止条件。// 读取控制台输入的整数值。第一关:While循环的使用。
2024-09-14 17:59:47
512
原创 idea配置sdk
在左侧选项列表中选择 Project 选项设置 SDK,无论是何种SDK 都需要运行在 Java 中,所以这里还需要配置Java版本的sdk。(2)完成 Java 版本的SDK选择后,在左侧的选項列表中选择 Global Libraries 选项添加SDK。单击+按钮添加 Scala SDK,自动选择指定的版本完成SDK 的配置过程,如图3-6所示。完成 SDK的配置后就可以应用 Scala 编写代码了。配置好开发环境后,新建一个Scala 文件测试开发平台。创建 HelloWord.scala 文件。
2024-09-10 17:40:07
1583
原创 Scala的lazy变量
3.重复上一步操作但是这一次使用lazy修饰变量.输入lazy val name="scala"并按Enter键可以看到值Scala并没有马上赋值给name,而是现实<lazy>5.用Var声明的变量能否用lazy修饰。输入lazy var name="df"并按Enter键 结果报错提示lazy不可与var合用,只能用来修饰用val声明的变量。输入name并按Enter键,可以看到值Scala已赋值给变量。输入val name="shf"并按Enter键,可以看到值shf马上就赋给了变量name。
2024-09-03 17:22:04
495
原创 一分钟教你用Scala写Helloworld
打开后输入"scalac HelloWorld.scala"命令对HelloWorld.scala文件进行编译 编译完成后会在Scala文件夹中自动生成三个class文件。一、编写:在C盘或D盘中新建文件Scala用于存储编写出的代码,在Scala文件中新建文本把后缀名改为.scala创建完成后用记事本或其他可以书写的方式打开。三、运行:输入scala HelloWorld命令执行class文件,在命令控制台中显示结果为helloworld!掌握Scala的编写、编译原理与运行。首先我们要知道学习目标。
2024-09-03 17:04:34
556
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人