代码示例:

 val sample_data_combine_result=List(
(0,(List(FitModel(4022,1447.92,-8.38983306721434,2.0)),1)),
(1,(List(FitModel(1083,389.88,-11.057139857142857,3.0)),1)),
(2,(List(FitModel(4022,1447.92,-8.38983306721434,2.0)),1))
) scala> val fitResult = sample_data_combine_result.flatMap(s => {
| var fitResultItems: ListBuffer[FitModelWithSceneType] = null
| if(s._1==0){
| fitResultItems=ListBuffer(
| FitModelWithSceneType(0,1,3.0,-3.9110667661835516,0.6989700043360189),
| FitModelWithSceneType(0,51,3.0,-3.9110667661835516,1.1760912590556813)
| )
| }
| if(s._1==1){
| fitResultItems=ListBuffer(
| FitModelWithSceneType(1,1,3.0,-3.9110667661835516,0.6989700043360189),
| FitModelWithSceneType(1,51,3.0,-3.9110667661835516,1.1760912590556813),
| FitModelWithSceneType(1,101,3.0,-3.9110667661835516,1.3979400086720377)
| )
| }
| if(s._1==2){
| fitResultItems=ListBuffer(
| FitModelWithSceneType(2,1,3.0,-3.9110667661835516,0.6989700043360189),
| FitModelWithSceneType(2,51,3.0,-3.9110667661835516,1.1760912590556813),
| FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
| FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
| FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377)
| )
| }
|
| fitResultItems
| })
fitResult: List[FitModelWithSceneType] =
List(
FitModelWithSceneType(0,1,3.0,-3.9110667661835516,0.6989700043360189),
FitModelWithSceneType(0,51,3.0,-3.9110667661835516,1.1760912590556813),
FitModelWithSceneType(1,1,3.0,-3.9110667661835516,0.6989700043360189),
FitModelWithSceneType(1,51,3.0,-3.9110667661835516,1.1760912590556813),
FitModelWithSceneType(1,101,3.0,-3.9110667661835516,1.3979400086720377),
FitModelWithSceneType(2,1,3.0,-3.9110667661835516,0.6989700043360189),
FitModelWithSceneType(2,51,3.0,-3.9110667661835516,1.1760912590556813),
FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377)
)

spark2.1:flatMap的用法的更多相关文章

  1. RxJava(三) flatMap操作符用法详解

    欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/51532776 本文出自:[余志强的博客] flatMap操作符的作用 ...

  2. 流API--流的映射

    很多时候,将一个流的元素映射到另外一个流很有帮助.映射操作最具代表的就是map()方法.实际编码中,我们会经常用到,所以这里专门整理一篇博客. 考虑如下情景,对于一个包含了姓名,电话,年龄等属性构成的 ...

  3. RxJava在Android中使用场景详解

    RxJava 系列文章 <一,RxJava create操作符的用法和源码分析> <二,RxJava map操作符用法详解> <三,RxJava flatMap操作符用法 ...

  4. Java8 stream学习

    Java8初体验(二)Stream语法详解 Java 8 flatMap示例 第一个Stream Demo IDEA里面写Stream有个坑 虽然java文件中没错,但是但编译的时候还是报错了, In ...

  5. RxJava2实战---第五章 变换操作符和过滤操作符

    RxJava2实战---第五章 变换操作符和过滤操作符 RxJava的变换操作符主要包括以下几种: map():对序列的每一项都用一个函数来变换Observable发射的数据序列. flatMap() ...

  6. java8学习之Stream分组与分区详解

    Stream应用: 继续举例来操练Stream,对于下面这两个集合: 需求是:将这两个集合组合起来,形成对各自人员打招呼的结果,输出的结果如: "Hi zhangsan".&quo ...

  7. Stream之高级函数

    上回文说到了有关Stream一些数学函数的用法.今天来说下Stream一些高级的函数用法,这些函数在日常工作中也是必不可少的,测试数据还是引用上一篇的数据. Map 这个方法我个人称之为转换函数,把一 ...

  8. Java8新特性之Optional,如何优雅地处理空指针

    是什么 ​ 从 Java 8 引入的一个很有趣的特性是 Optional 类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException)-- 每个 Java ...

  9. Android RxJava 2 的用法 just 、from、map、subscribe、flatmap、Flowable、Function、Consumer ...【转】

    先简单说说RxJava的用途与价值 原文出处:Android RxJava 2 的用法 用途: 异步 (也就是开线程跳转) 价值: 面对复杂的逻辑,它依然 简洁 ,代码 易读 RxJava2 与 Rx ...

随机推荐

  1. USB协议基础知识笔记

    usb协议 功能层: 控制传输.中断传输.块传输(批量传输).同步传输 设备层:管理USB设备.分配地址.读取设备描述符 总线接口层:采用NRZI编码-反向非归零编码(0将前一个电平翻转,1不翻转) ...

  2. webpack学习(七)打包压缩图片

    使用插件webpack-spritesmith生成雪碧图 1.安装webpack-spritesmith:npm install --save-dev webpack-spritesmith 2.配置 ...

  3. poj-1031-fence(不是我写的,我只是想看着方便)

    题目大意: 有一个光源位于(0,0)处,一个多边形的围墙.围墙是“全黑”的,不透光也不反射光.距光源r处的光强度为I0=k/r,k为常数. 一块无穷窄高为h的墙上围墙受到的照度为dI=I0*|cosα ...

  4. 多线程——工具类之Semaphore

    一.Semaphore功能介绍 Semaphore类相当于线程计数器,在获取Semaphore对象时设定可以产生的线程总数(线程并不是Semaphore类生成的,它只是统计线程的数量),创建Semap ...

  5. Java NIO之套接字通道

    1.简介 前面一篇文章讲了文件通道,本文继续来说说另一种类型的通道 -- 套接字通道.在展开说明之前,咱们先来聊聊套接字的由来.套接字即 socket,最早由伯克利大学的研究人员开发,所以经常被称为B ...

  6. 【Python】随机模块random & 日期时间のtime&&datetime

    ■ random 顾名思义,random提供了python中关于模拟随机的一些方法.这些方法都一看就懂的,不多说了: random.random() 返回0<n<=1的随机实数 rando ...

  7. ElasticSearch的安装

    一.安装javaSE环境(已配java环境变量的请直接跳过) 1.从Java JDK 官网下载适合自己的jdk版本.(我自己用的jdk1.7) 2.安装jdk后,配置java环境变量(ps:比较喜欢简 ...

  8. HashMap的底层原理

    简单说: 底层原理就是采用数组加链表: 两张图片很清晰地表明存储结构: 既然是线性数组,为什么能随机存取?这里HashMap用了一个小算法,大致是这样实现: // 存储时: int hash = ke ...

  9. java调用kettle的job和transfer工具类

    package com.woaiyitiaocai.util; import java.util.Map; import java.util.UUID; import org.apache.log4j ...

  10. JavaScript(第二十五天)【事件绑定及深入】

    事件绑定分为两种:一种是传统事件绑定(内联模型,脚本模型),一种是现代事件绑定(DOM2级模型).现代事件绑定在传统绑定上提供了更强大更方便的功能.   一.传统事件绑定的问题 传统事件绑定有内联模型 ...