scala
文章平均质量分 80
legotime
这个作者很懒,什么都没留下…
展开
-
用scala来写mapreduce做数据去重
1、数据准备file1数据:mapperreducebyscalafile2数据:scaladoneit2、程序import java.io.IOExceptionimport java.lang.Iterableimport org.apache.hadoop.conf.Configurationimport org.apache.hadoop.原创 2016-10-16 19:31:08 · 2773 阅读 · 0 评论 -
scala实现几大排序算法
package Sort/** * Created by legotime on 2016/5/14. */class ScalaSort { //------------------------产生随机序列------------------------------------------ //产生一组随机数,内部元素可能相同 def RandomList(n:Int原创 2016-05-14 21:37:15 · 994 阅读 · 0 评论 -
scala之case class 和case object
--------------------1、case 类只用来修饰 class 和object,也就是说只有case class 和case object的存在 ,而没有case trait 这一说2、case object A 这个A 是经过序列化的,而 case class A 没有经过序列化3、原创 2016-08-26 14:45:20 · 8718 阅读 · 0 评论 -
scala中 toString和apply的区别
class legotime{ def apply = "this is apply method" /** * 1 :scala中的toString和java中的toSting 一样------所有的对象都有這个方法, * 因为toString 是 java中object的方法,而全部的类都是继承于Object這个类 * 2: java中的toString是原创 2016-08-29 21:19:13 · 2169 阅读 · 0 评论 -
scala之正则表达式(二)内部匹配函数
1、scala处理正则表达式步骤以下面表达为例:val dateP1 = new scala.util.matching.Regex("""(\d\d\d\d)-(\d\d)-(\d\d)""", "year", "month", "day")图1:提取匹配信息在上面的基础上我们在来做一些事情,如下:val terday = "terday is 2016-8-2"原创 2016-08-02 20:30:28 · 4007 阅读 · 0 评论 -
scala之正则表达式(一)基础匹配
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。给定一个正则表达式和另一个字符串,我们可以达到如下的目的:1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。每一次原创 2016-08-02 20:29:38 · 24075 阅读 · 0 评论 -
IDEA读取本地文件进行处理的方式
第一种方式:利用main中参数args方式,程序如下:package algorithmimport org.apache.spark.{SparkContext, SparkConf}object WordCount { def main(args: Array[String]) { //第一步:spark运行的环境,这个是必须的步骤 val conf =原创 2016-04-01 20:54:48 · 5846 阅读 · 0 评论 -
scala中下划线(undercore)
scala的下划线(_)和java的(*)类似。作为通配符Existential types(存在性类型)def foo(l: List[Option[_]]) = ...Higher kinded type parameters(高阶类型参数)case class A[K[_],T](a: K[T])Ignored variab原创 2016-05-02 08:22:16 · 1588 阅读 · 0 评论 -
scala中的option、option[T]、Right和Left
前提:当我们设置一个数据库时,一个名字(String)对应一个年龄(Int)当我输入一个名字的时候来查询这个人的年龄的时候,如果输入一个没有在数据库中的人名,那么该如何返回?返回0?很明显是不可以的抛出异常?但是丢失值不可能认定为异常。java的解决方法:将方法标记为返回 java.lang.Integer,那么這样就可以放查询的时候返回null值scal原创 2016-04-26 15:00:55 · 3200 阅读 · 0 评论 -
scala中call-by-name和call-by-value
call-by-name:执行对象的方法后者返回对象的属性,对象的句柄(引用)传递给调用方法,所有的操作都是通过这个句柄作用在这个句柄指向的对象上,并没有制作副本。这样方法调用结束后,这个对象的状态是改变过的,不可恢复的call-by-value:制作传入的参数的一个副本,操作都是对这个副本进行的(基本类型都是call by value)1、var,val和def的区别原创 2016-04-28 21:35:47 · 939 阅读 · 0 评论 -
基于RDD解决大矩阵问题
import breeze.linalg.{DenseMatrix, DenseVector}import org.apache.spark.rdd.RDD/** * Created by legotime */case class MatrixEntry(i: Long, j: Long, value: Double)case class VectorEntry(i: L原创 2016-10-28 18:04:54 · 1114 阅读 · 0 评论