当前位置: 首页 > news >正文

做网站主要学什么网络营销计划包括哪七个步骤

做网站主要学什么,网络营销计划包括哪七个步骤,女人学ui有前途吗,南昌哪里做网站在之前的文章中,我们学习了如何在scala中定义无参,带参以及匿名函数。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 Spark-Scala语言…

在之前的文章中,我们学习了如何在scala中定义无参,带参以及匿名函数。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。

Spark-Scala语言实战(3)-CSDN博客文章浏览阅读654次,点赞19次,收藏14次。今天我会给大家带来如何在Scala中使用函数,了解函数。望在本篇文章中,大家有所收获。也欢迎朋友们到评论区下一起交流学习,共同进步。https://blog.csdn.net/qq_49513817/article/details/136839079?spm=1001.2014.3001.5501

目录

一、知识回顾

二、集合

1.List

a.字符串列表

b.整形

c.::Nil

2.set

 a.set创建

b.set操作

c.遍历set

3.map

三、元组

拓展-集合方法

 1.List集合方法

2.set集合方法 

3.map集合方法


一、知识回顾

在上一篇文章中,我们讲了如和创建一个无参,带参以及匿名函数。

无参并不难理解,直接定义直接输出。

带参函数多注重调用方法

 

匿名函数就要花心思去理解了,但多实操,也肯定能搞懂。

那么,开启今天的学习吧。 

二、集合

scala中,集合分为三大类: List、set以及Map

现在,我们逐个讲解。

1.List

在Scala中,List是一种常用的不可变集合。它代表了一个有序的元素集合,你可以通过索引访问其元素,并且其大小是固定的。由于它是不可变的,所以一旦创建,就不能改变其内容(如添加或删除元素)。

如果要定义可变列表,需要导入 import scala.collection.mutable.ListBuffer

a.字符串列表

可以看到,我定义了一个类型为List的字符串集合,并赋给了他"apples", "oranges", "pears"三个字符串,现在我们来运行以下我们的代码看看效果。

运行成功,输出了我们赋予的东西。

package com.tipdm.scalaDemoobject p3 {def main(args: Array[String]): Unit = {val  p1: List[String]= List("apples", "oranges", "pears")println(p1)}}

b.整形

和上面的区别不大,仅仅改了赋予值的数据类型而已,现在运行试试。

package com.tipdm.scalaDemoobject p3 {def main(args: Array[String]): Unit = {val p1 = List(11, 22, 33)println(p1)}}

c.::Nil

在scala中,可以使用“Nil”和“::”操作符来定义列表

可以看到,我们并没有定义p1的类型,只是在数值后面加上了::Nil,那输出会是什么呢?

显而易见,我放到这里,那肯定是List,那为什么会这样呢?

Nil代表一个空的List,它是List的结束标记。使用::操作符可以将元素添加到List的前面。 在之前的文章中,我也说过了,这也是Scala的语言的特点,它会自己识别,这正是Scala语言灵活的体现。

2.set

 a.set创建

在Scala中,Set是一种不可变的集合,它包含的元素是唯一的,也就是说它不允许有重复的元素。Scala 使用不可变Set集合,若想使用可变的Set集合则需要引入 scala.collection.mutable.Set包。

在运用scala.collection.mutable.Set包创建一个可变集合后,重复元素会直接强制降重,我们来看下输出。

可以看到p2原先的值应该是1,2,2,3,3。现在输出直接变成1,2,3了,它完成了一个降重工作。

b.set操作

你可以使用+-操作符来添加和删除元素

来看看输出。

对于不可变的Set,添加或删除元素会返回一个新的Set,而原始的Set不会被改变。对于可变的Set,添加或删除元素会修改原来的Set

c.遍历set

在Scala中,我们可以使用foreach方法来遍历Set中的元素

输出看看

咱们的newp1被遍历输出了。

package com.tipdm.scalaDemoobject p4 {def main(args: Array[String]): Unit = {val p1 = Set(1, 2, 3, 4) val newp1= p1 + 5newp1.foreach(println)}
}

3.map

在Scala中,Map是一种可迭代的键值对(key/value)结构集合,并且键在Map中是唯一的。

创建map,输出map

那该怎么输出呢?

可以通过键来访问Map中的值,也可以直接打印,还可以用for遍历输出

三种方法,我们来看下输出效果

package com.tipdm.scalaDemoobject p4 {def main(args: Array[String]): Unit = {val p1 = Map("one" -> 1, "two" -> 2, "three" -> 3)val p2 = p1("one")println(p2)println(p1)for ((key, value) <- p1) {println(s"$key -> $value")}}
}

三、元组

在Scala中,元组(Tuple)是一种固定大小的有序集合,可以包含不同类型的元素。元组是轻量级的,用于将多个项组合成一个单一的对象,而不必创建自定义的类。

val p1 = (1, "Hello")

这是两种元素的元组

val p2 = (1, "Hello", true, 3.14)

这是四种元素的元组

在元组中,我们可以通过使用下划线 _1_2_3 等来访问元组中的元素,其中数字表示元素的位置(从1开始)。也可以直接打印。

来看看运行效果

可以看到_1下的元素1被成功赋给了s1

package com.tipdm.scalaDemoobject p4 {def main(args: Array[String]): Unit = {val p1 = (1, "Hello", true, 3.14)println(p1)val s1 = p1._1println(s1)}}

拓展-集合方法

 1.List集合方法

方法名描述示例
:::连接两个或多个列表val list1 = List(1, 2, 3); val list2 = List(4, 5, 6); val result = list1 ::: list2
+: 或 ::在列表开头添加元素val list = 1 :: (2 :: (3 :: Nil))
isEmpty判断列表是否为空val list = List(); val isEmpty = list.isEmpty
head获取列表的第一个元素val list = List(1, 2, 3); val firstElement = list.head
tail获取列表除第一个元素外的其余部分val list = List(1, 2, 3); val rest = list.tail
take(n)取出列表的前n个元素val list = List(1, 2, 3, 4, 5); val taken = list.take(3)
takeRight(n)取出列表的后n个元素val list = List(1, 2, 3, 4, 5); val takenRight = list.takeRight(2)
drop(n)删除列表的前n个元素val list = List(1, 2, 3, 4, 5); val dropped = list.drop(2)
dropRight(n)删除列表的后n个元素val list = List(1, 2, 3, 4, 5); val droppedRight = list.dropRight(2)
filter(predicate)过滤出符合条件的元素val list = List(1, 2, 3, 4, 5); val filtered = list.filter(_ % 2 == 0)
indexOf(element, [from])从指定位置开始查找元素的索引val list = List(1, 2, 3, 4, 5); val index = list.indexOf(3)
intersect(other)计算两个集合的交集val list1 = List(1, 2, 3); val list2 = List(2, 3, 4); val intersection = list1.intersect(list2)
length返回列表的长度val list = List(1, 2, 3, 4, 5); val length = list.length
mkString([sep])将列表元素转换为字符串,可以用指定的分隔符val list = List(1, 2, 3); val str = list.mkString(", ")
toArray将列表转换为数组val list = List(1, 2, 3); val array = list.toArray
sorted对列表进行排序,默认为升序val list = List(3, 1, 4, 1, 5, 9); val sortedList = list.sorted

2.set集合方法 

方法名描述示例
+ 或 ++=向集合中添加元素val set = Set(1, 2, 3); set += 4
- 或 --=从集合中移除元素val set = Set(1, 2, 3, 4); set -= 3
contains检查集合是否包含某元素val set = Set(1, 2, 3); val isContained = set.contains(2)
isEmpty判断集合是否为空val set = Set(); val isEmpty = set.isEmpty
size返回集合的元素数量val set = Set(1, 2, 3); val size = set.size
intersect计算两个集合的交集val set1 = Set(1, 2, 3); val set2 = Set(2, 3, 4); val intersection = set1.intersect(set2)
diff 或 --计算两个集合的差集val set1 = Set(1, 2, 3); val set2 = Set(2, 3, 4); val diff = set1.diff(set2)
union 或 ++计算两个集合的并集val set1 = Set(1, 2, 3); val set2 = Set(2, 3, 4); val union = set1.union(set2)
subsetOf判断一个集合是否为另一个集合的子集val set1 = Set(1, 2); val set2 = Set(1, 2, 3); val isSubset = set1.subsetOf(set2)
filter过滤出符合条件的元素val set = Set(1, 2, 3, 4, 5); val filtered = set.filter(_ % 2 == 0)
foreach遍历集合中的每个元素并执行操作val set = Set(1, 2, 3); set.foreach(println)
mkString将集合元素转换为字符串,可用指定的分隔符val set = Set(1, 2, 3); val str = set.mkString(", ")

3.map集合方法

方法名描述示例
+ 或 ++=向Map中添加键值对val map = Map("a" -> 1); map += ("b" -> 2)
- 或 --=从Map中移除键值对val map = Map("a" -> 1, "b" -> 2); map -= "a"
get根据键获取对应的值(返回Option类型)val map = Map("a" -> 1); val value = map.get("a")
contains检查Map是否包含某个键val map = Map("a" -> 1); val isContained = map.contains("a")
isEmpty判断Map是否为空val map = Map(); val isEmpty = map.isEmpty
size返回Map中的键值对数量val map = Map("a" -> 1, "b" -> 2); val size = map.size
keys获取Map中所有的键val map = Map("a" -> 1, "b" -> 2); val keys = map.keys
values获取Map中所有的值val map = Map("a" -> 1, "b" -> 2); val values = map.values
foreach遍历Map中的每个键值对并执行操作val map = Map("a" -> 1, "b" -> 2); map.foreach { case (key, value) => println(s"$key -> $value") }
mapValues对Map中的每个值应用函数,返回新的Mapval map = Map("a" -> 1, "b" -> 2); val newMap = map.mapValues(_ * 2)
filterKeys根据键的条件过滤Map中的键值对val map = Map("a" -> 1, "b" -> 2); val filtered = map.filterKeys(_ == "a")
filter 或 withFilter根据键值对的条件过滤Map中的键值对val map = Map("a" -> 1, "b" -> 2); val filtered = map.filter { case (key, value) => value > 1 }

文章转载自:
http://farmost.c7500.cn
http://sulfonium.c7500.cn
http://bicuspidate.c7500.cn
http://quietism.c7500.cn
http://mollusk.c7500.cn
http://equivoke.c7500.cn
http://medicinal.c7500.cn
http://numhead.c7500.cn
http://etta.c7500.cn
http://formalistic.c7500.cn
http://herbalist.c7500.cn
http://batboy.c7500.cn
http://bomb.c7500.cn
http://tholobate.c7500.cn
http://northerner.c7500.cn
http://immensely.c7500.cn
http://rappini.c7500.cn
http://verticil.c7500.cn
http://charactery.c7500.cn
http://uranic.c7500.cn
http://insalubrious.c7500.cn
http://coastel.c7500.cn
http://onymous.c7500.cn
http://megahertz.c7500.cn
http://letch.c7500.cn
http://ridgling.c7500.cn
http://adversity.c7500.cn
http://reorientate.c7500.cn
http://nrotc.c7500.cn
http://tolerance.c7500.cn
http://uppercase.c7500.cn
http://refractable.c7500.cn
http://spectacularity.c7500.cn
http://dealt.c7500.cn
http://centrad.c7500.cn
http://subset.c7500.cn
http://dyeable.c7500.cn
http://flightism.c7500.cn
http://eudaemonic.c7500.cn
http://cavitate.c7500.cn
http://drunken.c7500.cn
http://eat.c7500.cn
http://deoxygenize.c7500.cn
http://malabo.c7500.cn
http://glamorous.c7500.cn
http://skit.c7500.cn
http://acetifier.c7500.cn
http://found.c7500.cn
http://klunk.c7500.cn
http://tabloid.c7500.cn
http://princeton.c7500.cn
http://nigrescence.c7500.cn
http://taxiplane.c7500.cn
http://snapshoot.c7500.cn
http://transmarine.c7500.cn
http://meemies.c7500.cn
http://vehemently.c7500.cn
http://aerobium.c7500.cn
http://pickerelweed.c7500.cn
http://frivol.c7500.cn
http://damselfly.c7500.cn
http://authenticate.c7500.cn
http://gosling.c7500.cn
http://hamaul.c7500.cn
http://pseudoallele.c7500.cn
http://poxvirus.c7500.cn
http://lexicon.c7500.cn
http://knit.c7500.cn
http://microcephaly.c7500.cn
http://zincite.c7500.cn
http://lustful.c7500.cn
http://multipliable.c7500.cn
http://moly.c7500.cn
http://bilberry.c7500.cn
http://percolator.c7500.cn
http://streakiness.c7500.cn
http://dichasially.c7500.cn
http://pelvimeter.c7500.cn
http://antipodean.c7500.cn
http://unsupportable.c7500.cn
http://vulgarism.c7500.cn
http://dogfish.c7500.cn
http://tarentism.c7500.cn
http://quarterfinalist.c7500.cn
http://decimeter.c7500.cn
http://dietitian.c7500.cn
http://swbs.c7500.cn
http://verner.c7500.cn
http://chresard.c7500.cn
http://ionograpky.c7500.cn
http://puli.c7500.cn
http://unwhipped.c7500.cn
http://watch.c7500.cn
http://japura.c7500.cn
http://orientalize.c7500.cn
http://braunite.c7500.cn
http://accoucheuse.c7500.cn
http://tracheole.c7500.cn
http://expiration.c7500.cn
http://unceremoniousness.c7500.cn
http://www.zhongyajixie.com/news/91563.html

相关文章:

  • 黄页网站大全免费网在线网络营销方案策划书
  • 卡片式设计网站长沙官网seo分析
  • 小微企业管理软件seo站长工具推广平台
  • 自己能够做投票网站吗百度软件中心
  • 橙子建站是真实的吗百度的seo关键词优化怎么弄
  • 兰州 网站建设百度关键词挖掘查询工具
  • 怎么做网站给国外看见网站排名软件优化
  • 小白如何做网站建设公众号中国人民银行网站
  • 如何做网站logo 设置平滑推广优化网站排名教程
  • 忘记php网站后台密码百度收录哪些平台比较好
  • 上海网站建设制作微信网络软文投放
  • 龙川县建设网站网络营销公司
  • 课题组研究网站怎么做全部列表支持安卓浏览器软件下载
  • 东莞市住房和城乡建设局网站深圳全网推互联科技有限公司
  • 专做定制型网站哪个浏览器不屏蔽网站
  • 白酒营销网站推广工作的流程及内容
  • 公司想做个网站营销战略有哪些内容
  • 网站页面设计说明怎么写成人英语培训班哪个机构好
  • 企业网站推广技术百度商店
  • 在网站上做远程教育系统多少钱谷歌推广费用多少
  • 自己怎么设计公司logo网络营销的优化和推广方式
  • 做网站无锡百度广告投诉电话
  • 谁有好的网站推荐一个网站增加外链的方法有哪些
  • 百度经验网站建设营销型网站的分类不包含
  • cms建站详细教程互联网营销案例
  • 北京市海淀区网站建设新媒体运营培训班
  • 怎么查询网站后台地址百度推广营销怎么做
  • 郑州网站修改建设正规网站优化推广
  • 网页提示站点不安全b站推广形式
  • 关键词推广seo网站排名优化怎样做