Scala编程题

Flink-Scala编程

  • 1、求出1-100之间的奇数之和
  • 2、定义一个int类型变量接收一个大于100的三位数,求出100到该数字之间满足如下要求的数字之和:
  • 3、编写wordcount程序(附idea中flink和scala开发环境的搭建)

1、求出1-100之间的奇数之和

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
循环
Scala编程题_第1张图片
递归
Scala编程题_第2张图片

2、定义一个int类型变量接收一个大于100的三位数,求出100到该数字之间满足如下要求的数字之和:

1.数字的个位数不为7;
2.数字的十位数不为5;
3.数字的百位数不为3;
循环
Scala编程题_第3张图片
递归
Scala编程题_第4张图片

3、编写wordcount程序(附idea中flink和scala开发环境的搭建)

(1)在idea里面新建项目:File->New Project->Scala->IDEA->Next,然后创建项目名称,注意Scala SDK这一项要选择和idea对应的版本,也可以create->Download,直接下载,然后点击finish完成。
(2)在src->main下面创建scala目录,然后右键scala目录->Mark Directory as->Sources Root
(3)创建object:右键第二步创建的scala->New->Scala Class->Object->输入程序名demo1.如图:
Scala编程题_第5张图片
(4)File->Project Structure->Libraries->±>Java->导入flink和scala的lib文件夹,如图:
Scala编程题_第6张图片

(5)然后打开demo1(也可以把名字命名为WordCount),编写Wordcount程序的代码如下:

import org.apache.flink.configuration.Configuration;
import org.apache.flink.streaming.api.scala.{StreamExecutionEnvironment,DataStream};
import org.apache.flink.api.scala._;
object demo1 {
  def main(args : Array[String]){
    val env:StreamExecutionEnvironment = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(new Configuration())
    val text:DataStream[String] = env.socketTextStream("hadoop1", 6666)
    val re:DataStream[(String,Int)] = text
      .flatMap(_.split(" "))
      .filter(_.nonEmpty)
      .map( (_,1) )
      .keyBy(_._1)
      .sum(1)
    re.print()
    env.setParallelism(2)
    env.execute("wc")
    println("hello world!")
  }
}

(6)先把端口打开:

nc -l 6666

(7)运行示例:
Scala编程题_第7张图片
关闭端口且断开连接后:
Scala编程题_第8张图片

你可能感兴趣的:(spark,Scala,scala)