![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Scala
hankl1990
show me the code
展开
-
彻底说清楚scala中的闭包和柯里化的概念
坚持说大白话,让问题尽可能的简单易懂!1:前言:闭包和柯里化是学习scala的过程中以及面试的过程中无法忽视的一道坎,不管你是否重视它,它都存在。笔者之前也是对这些东西云里雾里,因为Java里本身没有闭包这个概念的,接触过JS的同学可能知道闭包的概念,我没有接触过JS里的闭包所以也不敢去做对比,这里就我的一些理解和体会分享给大家。2:闭包:文档里的英文是 closure 是...原创 2020-04-30 14:22:06 · 808 阅读 · 1 评论 -
使用Java代码过滤掉乱码字符
转自:http://www.cnblogs.com/en-heng/p/5320024.html最近在日志数据清洗时遇到中文乱码,如果只要有非中文字符就将该字符串过滤掉,这种方法虽简单但并不可取,因为比如像Xperia™主題、天天四川麻将Ⅱ这样的字符串也会被过滤掉。1. Unicode编码Unicode编码是一种涵盖了世界上所有语言、标点等字符的编码方式,简单一点说转载 2017-10-10 11:26:16 · 6310 阅读 · 0 评论 -
使用idea搭建Scala 项目
转自:http://blog.csdn.net/lovehuangjiaju/article/details/47778671主要内容Intellij IDEA开发环境简介Intellij IDEA Scala开发环境搭建Intellij IDEA常见问题及解决方案Intellij IDEA常用快捷键1. Intellij IDEA开发环境简介具体介绍请参见:h转载 2017-10-10 20:16:53 · 20155 阅读 · 0 评论 -
SCALA 之 break
hkl:用惯了 Java里的break 的同学深感其中的方便,其实scala 也有一样的功能。直接上代码: def main(args: Array[String]): Unit = { import scala.util.control.Breaks._ breakable( for (s1 until 10){ if (原创 2017-11-07 13:53:47 · 196 阅读 · 0 评论 -
Scala 2.8 breakOut
转:https://stackoverflow.com/questions/1715681/scala-2-8-breakout/1716558之前代码里用到,但是不是太明白是怎么回事儿,找了貌似只有这里有比较不错的解释。直接都给粘过来了。In Scala 2.8, there is an object inscala.collection.packag转载 2017-10-30 14:41:09 · 480 阅读 · 0 评论 -
Spark强大的函数扩展功能之udf
转:http://www.jianshu.com/p/833b72adb2b6在数据分析领域中,没有人能预见所有的数据运算,以至于将它们都内置好,一切准备完好,用户只需要考虑用,万事大吉。扩展性是一个平台的生存之本,一个封闭的平台如何能够拥抱变化?在对数据进行分析时,无论是算法也好,分析逻辑也罢,最好的重用单位自然还是:函数。故而,对于一个大数据处理平台而言,倘若不能支持函数的扩展,确乎转载 2017-10-31 10:05:47 · 870 阅读 · 0 评论 -
Scala 之 Option
转:http://blog.csdn.net/winterto1990/article/details/52105674Option是一个很有意思的类,首先,这个类并不一个真正的集合类,因为它并没有有继承Traversable或Iterable。但是,它确实具有Iterable的所有操作,这意味着你完全可以把Option当成一个集合去使用,其中原因你应该可以猜的到,这显然是隐式转换转载 2017-10-31 14:20:30 · 277 阅读 · 0 评论 -
scala 之 互换map里的key和value的位置
这个功能实现其实很简单,最主要的关键点使我们要知道Map里的每一个k->v对在我们遍历的时候都是一个元组就ok了。话不多说 粘代码:再加一点说明吧,SortedMap是不可变的。向map里添加数据。得是mutable的。两种方式是一样的。mumap+=(("1","2"))mumap+=("1"->"2")这个我们使用SortedM原创 2017-10-16 15:04:54 · 4659 阅读 · 0 评论 -
scala-collection
转:http://www.jianshu.com/p/69bff3c7ec97Scala的集合类可以从三个维度进行切分:可变与不可变集合(Immutable and mutable collections)静态与延迟加载集合 (Eager and delayed evaluation )串行与并行计算集合(Sequential and parallel evaluation )t转载 2017-10-25 16:27:56 · 1731 阅读 · 0 评论 -
scala的split()函数
转:http://blog.csdn.net/u011878191/article/details/45560935 今天在写一个统计用户信息的程序时出现了bug,导致统计结果与真实值有很大差距。经过仔细检查,我发现是错误地使用split函数导致的。看来还是对scala中的split函数的理解不够透彻。本篇博文将详细解释scala中String.split的参数及用法。 因为转载 2017-10-17 12:06:45 · 1652 阅读 · 0 评论 -
迭代解决多层嵌套json 转map
原文链接http://blog.csdn.net/xnlej/article/details/78622338留着备用最近工作需要用到json 转map ,在网上看到了一个方法,但并不能解决多层嵌套json,在此对这个方法进行了迭代处理,解决这个问题import net.minidev.json.{JSONObject}import net.minidev.json.parser.JSONPar...转载 2018-02-13 11:33:07 · 2370 阅读 · 0 评论 -
Scala 之 使用JDBC 操作 mysql
zhuanzi :http://blog.csdn.net/u013041398/article/details/50968602本文使用java JDBC连接,能够很好的解决scala与数据库连接的问题。本文使用的数据库为Mysql,scala 版本为2.10.4 。121)修改built.sbt文件 在使用scala连接数据库之前,需要java JDBC driver加载转载 2017-09-22 16:32:35 · 538 阅读 · 0 评论 -
基于IntelliJ IDEA开发Spark的Maven项目——Scala语言
转自:http://blog.csdn.net/kwu_ganymede/article/details/51832427基于IntelliJ IDEA开发Spark的Maven项目——Scala语言1、Maven管理项目在JavaEE普遍使用,开发Spark项目也不例外,而scala语言开发Spark项目的首选。因此需要构建Maven-Scala项目来开发转载 2017-09-01 17:32:25 · 303 阅读 · 0 评论 -
Scala 之 ::: 操作符
hkl曰:在网上也没见到有比较不错的用法,我就自己搞吧。太具体的原理我也没搞懂,只是知道这个东西是干什么的。直接上不费话了。def main(args: Array[String]): Unit = { val list=List(1,2,3) val list2=List(4,5,6) val list3=list.:::(list2) //这个和下面的原创 2017-07-21 16:15:17 · 316 阅读 · 0 评论 -
Scala 之 令人惊异的十大集合函数
转自:https://www.iteblog.com/archives/1946.html?from=related#i当我操作 Scala 集合时,我一般会进行两类操作:转换操作(transformation )和行动操作(actions)(有些人喜欢叫他为聚合操作)。第一种操作类型将集合转换为另一个集合,第二种操作类型返回某些类型的值。 本文我将集中介绍几个日常工转载 2017-07-18 14:14:06 · 478 阅读 · 0 评论 -
Scala 之 函数----基础篇
转自:http://blog.csdn.net/jiangpeng59/article/details/48876753scala 中的函数是很重要很关键的,这些都是关于关于函数的比较基本的概念以及语法格式。1.Scala的函数默认都有返回,Unit类似C#里面的void[java] view plain copydef funt转载 2017-07-12 13:58:06 · 201 阅读 · 0 评论 -
Scala 之 List 合并 以及去重小细节
hkl曰:研究我们老大的代码,自己就试了试,结果有自己的发现,分享出来免得大家走弯路!直接上代码,然后在代码里说明问题。def main(args: Array[String]): Unit = { 第一步;定义两个List,并且有重复的元素4 val list=List(1,2,3,4) val list01=List(4,5,6,7)第二步:原创 2017-07-22 17:38:55 · 8250 阅读 · 2 评论 -
Scala 之 模式匹配
转自:http://rscala.com/index.php/508.htmlScala 提供了强大的模式匹配机制,应用也非常广泛。一个模式匹配包含了一系列备选项,每个都开始于关键字 case。每个备选项都包含了一个模式及一到多个表达式。箭头符号 => 隔开了模式和表达式。与java switch case的差别Scala是没有Java中的switch ca转载 2017-08-11 15:26:15 · 264 阅读 · 0 评论 -
ScaLa 之 implict
转自:http://www.cnblogs.com/rollenholt/p/4118567.htmlScala implicitimplicit基本含义在Scala中有一个关键字是implicit, 之前一直不知道这个货是干什么的,今天整理了一下。我们先来看一个例子:def display(input:String):Unit = prin转载 2017-08-14 20:33:50 · 218 阅读 · 0 评论 -
Scala 之 mysql 数据库连接池
转子:http://blog.csdn.net/weinierzui/article/details/72867329看到有大神用sparkstreaming里面的MongoDB 创建的工具类,好像很厉害,但是现在还不太懂。推荐:在Spark中通过Scala + Mongodb实现连接池 也可参考spark官网存在问题:无法将spark产生的datafr转载 2017-09-22 18:42:36 · 6843 阅读 · 1 评论 -
Scala 之 四种操作符的解释
转子:https://segmentfault.com/a/1190000005083578初学scala的人都会被Seq的各种操作符所confuse。下面简单列举一下各个Seq操作符的区别。4种操作符的区别和联系:: 该方法被称为cons,意为构造,向队列的头部追加数据,创造新的列表。用法为 x::list,其中x为加入到头部的元素,无论x是列表与否,它都转载 2017-09-16 13:42:12 · 549 阅读 · 0 评论 -
Scala 之 合并两个map
转自:http://www.cnblogs.com/tugeler/p/5134862.html开发中遇到需求:合并两个Map集合对象(将两个对应KEY的值累加)先说解决方案:( map1 /: map2 ) { case (map, (k,v)) => map + ( k -> (v + map.getOrElse(k, 0)) ) } 这特么什么鬼 (转载 2017-09-26 13:57:58 · 4712 阅读 · 0 评论 -
Scala 之 可边长参数 与 通配符
转自:http://www.cnblogs.com/mustone/p/5711937.html转自 http://www.cnblogs.com/rollenholt/p/4112833.htmlScala 允许你指明函数的最后一个参数可以是重复的。这可以允许客户向函数传入可变长度参数列表。想要标注一个重复参数,在参数的类型之后放一个星号。例如:转载 2017-09-26 16:17:57 · 339 阅读 · 0 评论 -
Scala 之 认识Multiline String与String的stripMargin妙用
转自:http://rscala.com/index.php/175.html问题描述: 在Scala代码块中如何创建多行字符串,是否存在类似其他语言的“定界符”语法?解决方法: 要在Scala中创建多行字符串,就需要了解Scala的Multiline String。在Scala中,利用三个双引号包围多行字符串就可以实现。代码实例如:val转载 2017-07-17 15:05:11 · 1217 阅读 · 0 评论