Scala/Java8/函数式编程
翔飞天宇
资料共享,相互学习,共同进步
展开
-
Java8揭秘(一)
Java8揭秘(一)——Lambda表达式、Default方法和批量数据操作(英文原文:Java 8 Revealed: Lambdas, Default Methods and BulkData Operations)译者:为了更好的阅读本篇译文,先插入下面几个Java8中的新概念介绍:函数接口(Functional Interface):只包含一个抽象方法的原创 2016-02-29 22:49:31 · 496 阅读 · 0 评论 -
Java8 的方法引用
方法引用的概念 某些lambda表达式里面仅仅是执行一个方法调用。在这种情况下,不用lambda表达式,直接通过方法名称引用方法的形式可读性更高一些,这种形式就是方法引用,方法引用是一种更简洁易懂的lambda 表达式。看下面这个Person类:public class Person { public enum Sex { MA原创 2016-02-29 23:54:34 · 437 阅读 · 0 评论 -
scala console 用:paste 多行输入 以及load加载本地文件
http://alvinalexander.com/scala/scala-repl-how-to-paste-load-blocks-of-source-code原创 2016-09-29 11:45:10 · 1921 阅读 · 0 评论 -
在scala中:: , +:, :+, :::, +++的区别总结
初学scala的人都会被Seq的各种操作符所confuse。下面简单列举一下各个Seq操作符的区别。4种操作符的区别和联系:: 该方法被称为cons,意为构造,向队列的头部追加数据,创造新的列表。用法为 x::list,其中x为加入到头部的元素,无论x是列表与否,它都只将成为新生成列表的第一个元素,也就是说新生成的列表长度为list的长度+1(btw,x::list等价于lis原创 2016-12-26 13:59:43 · 6955 阅读 · 1 评论 -
java clone方法使用详解
Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,特别是先学c、c++后学java的程序员。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。比如函数参数类型是自定义的类时,此时便是引用传递而不是值传递。以下是一个小例子:Java代码 public class转载 2017-07-06 20:21:19 · 333 阅读 · 0 评论 -
Spark创建DataFrame和读取CSV数据文件
之前写的程序中,有些API在Spark SQLContext没有,我计算的结果先保存在rdd中,最后在使用RDD转换成dataframe进行保存,话不多说下面是代码.//一个StruceField你可以把它当成一个特征列。分别用列的名称和数据类型初始化 val structFields = List(StructField("age",DoubleType),StructField("h原创 2017-06-20 20:07:52 · 4770 阅读 · 0 评论 -
Java实现正则匹配出script标签中字符串包含某个几个单词的所有行,以及编码转换
/*取得script下面的JS变量*/ Elements scriptinfo = document.getElementsByTag("script").eq(21); List list=new ArrayList(); Map PopWindowInfo = new LinkedHashMap(); /*循环遍原创 2017-03-24 16:53:17 · 1883 阅读 · 0 评论 -
Java实现Unicode码转为中文
java里如何把\u8BA8\u8BBA\u533A这种编码转换成中文package com.util.prop;public class Unicode2CN { /** * @Author:HaoMing(郝明) * @Project_name:checkface * @Full_path:com.util.prop.Unicode2CN.java * @Date:@201原创 2017-03-24 16:49:09 · 5651 阅读 · 0 评论 -
万能的林萧说:一篇文章教会你,如何做到招聘要求中的“要有扎实的Java基础”。
来历 本文来自于一次和群里猿友的交流,具体的情况且听LZ慢慢道来。 一日,LZ在群里发话,“招人啦。” 然某群友曰,“群主,俺想去。” LZ回之,“你年几何?” 群友曰,“两年也。” LZ憾言之,“惜了,三至五为佳。然如汝有扎实之基础,且附一技之长,倒也并非不可呀。” 群友惑,问之,“何为一技之长?” LZ抚须答曰,“皆可,吾之一技即为写。”转载 2017-03-24 16:46:00 · 372 阅读 · 0 评论 -
回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议
回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来。LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容基本上忘得一干二净,所以写这篇文章其实是很有难度的。 但是,最近问LZ的人实在是太多了,为了避免重转载 2017-03-24 16:42:51 · 332 阅读 · 0 评论 -
一句话说清楚什么是闭包函数
题记:闭包是许多语言都支持的特性,像javascript,lua等。对闭包函数有所了解的童鞋可能都会感叹闭包函数似乎做到了其他普通函数未能做到的事情。 普通函数内部可以直接读取全局变量。如: local n = 1function f1( ... ) return nendprint(f1()) --1 但普通函数内部却无原创 2017-02-13 13:22:20 · 577 阅读 · 0 评论 -
Java8集合类库的批量数据操作
第三章:Java集合类库的批量数据操作引入批量数据操作的目的是应用lambda函数来实现包含并行操作在内的多种数据处理功能,而支持并行数据操作是其关键内容。这个并行操作是在Java7 java.util.concurrency的Fork/Join机制上实现的。批量操作接口正如最初在变更说明书上说的,引入批量操作接口的目的是:给Java集合类库增加批量操作数据的支持。通常称这种批量数原创 2016-02-29 23:45:26 · 2712 阅读 · 0 评论 -
Java8中的 Default 方法
第二章 Default 方法为什么要有Default方法在Java8发布之际,有件事情就显得非常重要,即在不破坏java现有实现架构的情况下能往接口里增加新方法。引入Default方法到Java8,正是为了这个目的:优化接口的同时,避免跟现有实现架构的兼容问题。看下面例子:List list = ...list.forEach(...);// Lambda cod原创 2016-02-29 23:06:00 · 908 阅读 · 0 评论 -
Java 8中的 Lambda表达式
第一章:Java 8中的 Lambda表达式在这一章,我们说一说Lambda表达式的语法。我们将从经典的Java语法过渡到新式的Lambda表达式语法。我们也会讲一讲Lambda表达式的原理-即在运行时Lambda表达式如何表示,涉及哪些字节码指令。入门如果你熟悉Groovy或者Ruby这些支持Lambda表达式的编程语言,那么你一开始可能会认为Java的Lambda表达式并不像其原创 2016-02-29 22:50:56 · 565 阅读 · 0 评论 -
[转]Spark与Pandas中DataFrame对比(详细)
PandasSpark工作方式单机single machine tool,没有并行机制parallelism不支持Hadoop,处理大量数据有瓶颈分布式并行计算框架,内建并行机制parallelism,所有的数据和操作自动并行分布在各个集群结点上。以处理in-memory数据的方式处理distributed数据。支持Hadoop,能处理大量数据延迟机制原创 2017-08-29 15:24:52 · 1789 阅读 · 0 评论