scala
文章平均质量分 92
lijie_cq
It's never too old to learn
展开
-
Scala基础语法笔记
1.Scala的数据类型:Byte 8位有符号补码整数。数值区间为 -128 到 127Short 16位有符号补码整数。数值区间为 -32768 到 32767Int 32位有符号补码整数。数值区间为 -2147483648 到 2147483647Long 64位有符号补码整数。数值区间为 -9223372036854775808原创 2016-10-27 23:08:56 · 375 阅读 · 0 评论 -
scala实现观察者模式示例
一个主题抽象类,主题实现类,观察者抽象类,观察者实现类,和一个主入口详细如下:package cn.tounaimport scala.collection.mutableimport scala.collection.mutable.{ArrayBuffer, ListBuffer}/** * Created with IntelliJ IDEA. * User: lijie *原创 2017-07-19 15:43:03 · 467 阅读 · 0 评论 -
scala对redis集群操作工具类 附带java版本的工具类以及spring配置
Scala的工具类如下:package cn.tounaimport java.utilimport redis.clients.jedis.{HostAndPort, JedisCluster}import scala.collection.JavaConversions._import scala.collection.mutable/** * Created with Intelli原创 2017-07-19 18:54:07 · 3982 阅读 · 0 评论 -
Scala入门04
Scala中的柯里化以及隐式转换,其中柯里化允许多个参数以()()多括号的方式传入,隐式转换同java中的装饰模式一样,只不过是被隐式转换了,不用像装饰方法需要手动传入,比如BufferedInputstream和FileInputstream 在使用装饰模式需要在创建BufferedInputstream的显示的传入FileInputstream的对象,如果在scala中就可以用隐式转换不用显示传原创 2017-03-26 21:18:17 · 574 阅读 · 0 评论 -
使用AKKA做分布式爬虫的思路
上周公司其他小组在讨论做分布式爬虫,我也思考了一下,提了一个方案,就是使用akka分布式rpc框架来做,自己写master和worker程序,client向master提交begin任务或者其它爬虫需求,master让worker去爬网页,worker都是kafka的同一个group然后从kafka里面拉取数据(URL),然后处理爬了的网页,解析内容,把爬下来的网页通过正则表达式匹配出嵌套的网页,然原创 2017-03-26 02:56:38 · 6203 阅读 · 0 评论 -
Akka分布式模拟学生向老师提问题
Akka处理并发的方法基于Actor模型。在Akka里,Actor之间通信的唯一机制就是消息传递,每个Actor都有一个ActorSystem管理,其中ActorSystem是单例的,它管理了多个actor家里电脑没装visio,勉强看看就行下面就介绍下使用Akka来模拟学生向老师提问题的场景首先得建立工程,scala也可以使用Maven管理,和java一样创建一个Maven项目,然后修改 src/原创 2017-03-24 00:12:38 · 1675 阅读 · 0 评论 -
使用scala的Actor模拟计算多文件WordCount
scala的Actor是基于事件模型的,具体的模型可以自己查询资料,这里根据别人的demo代码自己也写了一个基于Actor的事件模型的多文件计算WordCount,代码中我写了详细的注释,仅供参考首先在D盘下面创建三个文件,里面写一些单词用空格分开:具体代码如下:package com.lijie.actorimport scala.actors._import scala.collection.原创 2017-03-22 15:50:47 · 1058 阅读 · 0 评论 -
Scala入门05
作为笔记记录下:package com.lijie.scalaimport MyImpilicit.person2Comp//视图界定 需要隐式转换 这里传入的T必须隐式转换成Ordered的类型class MyComparctorOrdered[T <% Ordered[T]] { def comp(t1: T, t2: T): T = { if (t1 > t2) t1 else原创 2017-04-07 01:03:11 · 378 阅读 · 0 评论 -
Scala入门02
练习代码01:package com.lijie.test//第一个private表示包可见性在com.lijie下面的包可以访问这个类,其他包不能访问//第二个private表示私有构造方法,表示只能在伴生对象才能new//protected也可以修饰表示子类能访问private[lijie] class Scala01 private { //不可以修改 val a = "1008原创 2017-03-09 23:07:29 · 402 阅读 · 0 评论 -
scala版本wordcount的几种写法
今天看了下scala写的wordcount可以一行搞定,但是感觉有点费脑!写了几种方式:第一种:代码如下所示,其中先对list进行map操作并以空格切分,变成:list(list(“hello”,”world”),list(“word”,”count”),list(“hello”,”hello”,”lijie”),list(“lalala”,”lijie”)),然后对上面的list进行flatten原创 2017-03-09 00:23:53 · 4265 阅读 · 0 评论 -
Scala入门01
scala中方法的定义以及函数的定义方法定义://简单方法定义def m1(a: Int, b: Int): Int = a + b//把只有单个参数函数作为参数传入方法def m1(f: Int => Int, a: Int): Int = { f(a)}//把有多个参数函数作为参数传入方法def m1(f: (Int,Int) => Int, a: Int): Int = {原创 2017-03-07 00:30:49 · 462 阅读 · 0 评论 -
Scala入门03
scala的trait接口以及继承scala中的接口以及继承接口和父类,在scala中接口是trait(特征),用关键字extends,类似于java8里面的interface,在trait中可以定义实现的方法,也可以定义未实现的方法同java8一样接口代码JieKou.scala:package com.lijie//trait表示定义一个接口trait JieKou { //接口的方法原创 2017-03-19 18:04:03 · 487 阅读 · 0 评论 -
scala入门06 集合的排序
在java里面集合排序有comparable和compator,在scala里面也有类似的接口,下面写个List简单排序的demo:结构如下(就一个demo 和 隐式转换的mypredef):demo01如下(分别有三个方法的demo sortWith,sorted和sortby):package cn.touna/** * Created with IntelliJ IDEA. * Us原创 2017-07-19 12:39:40 · 377 阅读 · 0 评论