编程开发--scala
东华果汁哥
大家好!我叫赖德发,欢迎您来到我的博客。
展开
-
【java 环境变量配置】linux下java环境变量配置
vim /etc/profileexport JAVA_HOME=/usr/share/jdk1.6.0_14 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar原创 2017-09-12 09:58:09 · 567 阅读 · 0 评论 -
【scala 数据结构和算法】Scala实现:冒泡排序
算法原理:1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3、针对所有的元素重复以上的步骤,除了最后一个。 4、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较scala实现:/** * Created by Administrator on 2017/1原创 2017-12-18 16:27:22 · 1662 阅读 · 0 评论 -
【scala 数据结构和算法】Scala实现:快速排序
算法思想: 快速排序由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。scala递归使用快速排序:/** * Created by Administrator on 2017/12/原创 2017-12-18 19:49:20 · 521 阅读 · 0 评论 -
【Scala 提取器】Scala 提取器(Extractor)
提取器是从传递给它的对象中提取出构造该对象的参数。Scala 标准库包含了一些预定义的提取器,我们会大致的了解一下它们。Scala 提取器是一个带有unapply方法的对象。unapply方法算是apply方法的反向操作:unapply接受一个对象,然后从对象中提取值,提取的值通常是用来构造该对象的值。以下实例演示了邮件地址的提取器对象:package DataStructureAndAlg原创 2017-12-27 16:05:49 · 490 阅读 · 0 评论 -
【scala io】scala io操作 txt文件读取和写入
package DataStructureAndAlgorithm//导入scala io包import io.Source//导入java io包import java.io.PrintWriterimport java.io.File/** * Created by Administrator on 2017/12/23. */object Test5ReadFromTxt原创 2017-12-23 15:50:45 · 3702 阅读 · 0 评论 -
【Scala 异常处理】Scala 异常处理
1、Scala抛出异常2、Scala捕获异常Scala 的异常处理和其它语言比如 Java 类似。 Scala 的方法可以通过抛出异常的方法的方式来终止相关代码的运行,不必通过返回值。 捕捉异常的catch子句,语法与其他语言中不太一样。在Scala里,借用了模式匹配的思想来做异常的匹配,因此,在catch的代码里,是一系列case字句,finally 语句用于执行不管是正常处理还是有异常发原创 2017-12-27 16:19:26 · 2092 阅读 · 0 评论 -
【Scala 正则表达式】Regex 类来支持正则表达式
1、匹配功能 Scala 通过 scala.util.matching 包中的 Regex 类来支持正则表达式如果需要查看所有的匹配项可以使用 findAllIn 方法。 你可以使用 mkString( ) 方法来连接正则表达式匹配结果的字符串,并可以使用管道(|)来设置不同的模式:package DataStructureAndAlgorithm/** * Created by Admin原创 2017-12-27 16:34:00 · 669 阅读 · 0 评论 -
【scala 特质】Scala的Trait特质使用
Trait 的使用场景当做接口带有具体实现的接口带有特质的对象特质从左到右被构造package DataStructureAndAlgorithm/** * Created by Administrator on 2017/12/23. */// 特质 1// 带有具体实现的接口trait Logger1{ def log(msg: String): Unit ={原创 2017-12-23 10:59:07 · 988 阅读 · 0 评论 -
【Scala 类和对象】Scala 类和对象
1、类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。我们可以使用 new 关键字来创建类的对象。 2、Scala中的类不声明为public,一个Scala源文件中可以有多个类。 3、Scala 的类定义可以有参数,称为类参数,如上面的 xc, yc,类参数在整个类中都可以原创 2017-12-27 16:52:18 · 679 阅读 · 0 评论 -
【Scala 继承】Scala 中的继承
Scala继承一个基类跟Java很相似, 但我们需要注意以下几点: 1、重写一个非抽象方法必须使用override修饰符。 2、只有主构造函数才可以往基类的构造函数里写参数。 3、在子类中重写超类的抽象方法时,你不需要使用override关键字。 4、继承会继承父类的所有属性和方法,Scala 只允许继承一个父类。import java.io._class Point(val xc: Int原创 2017-12-27 17:00:05 · 942 阅读 · 0 评论 -
【scala 迭代器】Scala Iterator(迭代器)
1、Scala Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法。 2、迭代器 it 的两个基本操作是 next 和 hasNext。 3、调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。 4、调用 it.hasNext() 用于检测集合中是否还有元素。 5、让迭代器 it 逐个返回所有元素最简单的方法是使用 while 循环。 6、你可以使用原创 2017-12-27 17:10:11 · 2591 阅读 · 0 评论 -
【scala 数据结构和算法】Scala实现:归并排序
一、归并排序算法思想归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。 归并过程为:比较a[i]和b[j]的大小,若a[i]≤b[j],则将第一个有序表中的元素a[i]原创 2017-12-19 15:36:20 · 753 阅读 · 0 评论 -
【scala 代码片段3】轻松入门scala--集合的操作交并补
主要内容: 1、集合的过滤filter 2、集合的集合flatten 3、集合的交并补diff、intersect、union、distinct 4、flatMap、Map用法 5、集合条件检查 6、集合分组 partition 7、foldLeft求和代码片段:/** * Created by Administrator on 2017/1/13. */object stu原创 2017-12-18 15:35:38 · 463 阅读 · 0 评论 -
【scala 代码片段2】轻松入门scala--列表的操作以及集合元素映射
主要内容: 1、list.head 返回list集合中的第一个元素 2、 list.tail 返回除了list.head以外的所有元素(也是个list集合) 3、list添加元素(:: 操作符只适用于list集合) 4、 集合元素映射yield 5、 filter和map函数代码片段:/** * Created by Administrator on 2016/5/18. */o原创 2017-12-18 14:59:15 · 387 阅读 · 0 评论 -
【scala 高级函数】快速了解scala高级函数用法
主要内容: 1、scala 的mkString 使用 2、Scala的List/Set/Tuple使用 3、Scala的Map和Option的使用 4、4、Scala的集合内常用的操作1、Scala的mkString使用如果你想要把集合元素转化为字符串,那麽请使用mkString 函数。同时可能还会添加分隔符,前缀,后缀。 package DataStructureAndAlgorithm/原创 2017-12-20 13:27:05 · 858 阅读 · 0 评论 -
【scala 格式化操作】Scala的字符串 格式化 输出
主要内容: 1、字符串通过+号连接。 2、字符串通过 % 传值。 3、字符串通过$引用。package DataStructureAndAlgorithm/** * Created by Administrator on 2017/12/23. */case class BookPrint(name: String, author: String)object Test1ScalaP原创 2017-12-23 09:49:02 · 6355 阅读 · 6 评论 -
【scala 函数定义和调用】Scala的函数调用:普通函数、匿名函数、柯里化函数
package DataStructureAndAlgorithm/** * Created by Administrator on 2017/12/23. */object Test1ScalaFunction { // function_1: 无返回值 def funApacheCN_1(name: String): Unit = { println("hello: " +原创 2017-12-23 10:09:11 · 2921 阅读 · 0 评论 -
【scala 表达式】Scala的循环表达式和条件表达式
主要内容: 1、scala 条件表达式 2、scala循环表达式1、Scala的条件表达式package DataStructureAndAlgorithm/** * Created by Administrator on 2017/12/23. */object Test3ScalaConditional { def main(args: Array[String]) {//原创 2017-12-23 10:31:17 · 3043 阅读 · 0 评论 -
【scala 的类】Scala的类:变量/方法/构造方法/继承
package DataStructureAndAlgorithm/** * Created by Administrator on 2017/12/23. */// 1. 声明类 和 getter/setter 方法class Person{ // name为变量,不设置初始值 _ 代表前面的name变量 // var 会生成 getter和setter 方法 var n原创 2017-12-23 10:41:15 · 1188 阅读 · 0 评论 -
【Scala 抽象类】Scala的抽象类:abstract class
Scala的抽象类:abstract class类的一个或者多个方法没有完整的定义声明抽象方法不需要加abstract关键字,只需要不写方法体子类重写父类的抽象方法时不需要加override父类可以声明抽象字段(没有初始值的字段)子类重写父类的抽象字段时不需要加overridepackage DataStructureAndAlgorithm/** * Created by Admi原创 2017-12-23 10:50:18 · 1911 阅读 · 0 评论 -
【scala 匹配模式】match case|case class |::|:::|=>用法
主要内容:1、Scala的匹配模式(标准用法(match)/使用守卫/匹配类型)2、Scala的case class,多用在匹配模式中3、Scala中 :: 和 ::: 冒号的使用情况4、Scala中 => 映射作用一、Scala的匹配模式(标准用法(match)/使用守卫/匹配类型)package DataStructureAndAlgorithm/** * Created by A原创 2017-12-23 11:22:32 · 1164 阅读 · 0 评论 -
【scala 小试牛刀1】scala vs python 解一元二次方程
一元二次方程ax^2+bx+c=0中, 一元二次方程求根公式:两根x1,x2= [-b±√(b^2-4ac)]/2a韦达定理:两根x1,x2有如下x1+x2=-b/ax1*x2=c/apython2.7版本:# encoding: utf-8from __future__ import divisionimport sysreload(sys)sys.setdefaultencoding原创 2017-12-23 14:38:35 · 985 阅读 · 0 评论 -
【scala 数据库操作】scala操作mysql数据库
主要内容:1、scala连接mysql(jdbc方式)2、scala查询mysql数据3、scala更新mysql数据4、scala插入mysql数据。5、scala 删除mysql数据。6、scala 调用存储过程。在我的本地mysql 数据库中,有一张persons表,内容如下: 下面我们希望通过scala执行 mysql 查询数据和插入数据 和更新数据,删除数据、调用存储过程等原创 2017-12-24 10:17:44 · 17051 阅读 · 1 评论 -
【scala 语法基础】变量、函数、控制结构、数据类型
一、主要内容 Scala中变量的声明与函数定义 Scala中的控制结构 Scala中的数据类型1:变量声明与函数定义 变量声明:val 和 var ,两者的区别是val声明的变量是不可变的,而var声明的变量可变带返回值scala> def max(x:Int,y:Int):Int = { | if(x>y) x | else y原创 2017-08-31 10:45:46 · 538 阅读 · 0 评论 -
【scala 代码片段1】轻松入门scala--列表的操作以及文件读取
主要内容: 1、列表的操作,每个元素如何计算,求和,求最大值,最小值,过滤,连接 等。 2、scala如何读取txt文件。代码片段:/** * Created by Administrator on 2016/5/5. */object test1 { def main(args: Array[String]) { val data1=1 to 10// 让列表中的每个原创 2017-12-18 14:51:59 · 836 阅读 · 0 评论 -
【scala 安装错误】错误: 找不到或无法加载主类 scala.tools.nsc.MainGenericRunner
错误: 找不到或无法加载主类 scala.tools.nsc.MainGenericRunner原因: Scala安装路径中包含空格。解决办法:scala 不要安装在E:\Program Files 这种有空格的目录下,简直坑...原创 2019-01-17 12:28:52 · 4331 阅读 · 0 评论