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

重庆做网站开发的集中华为邮箱登录入口

重庆做网站开发的集中,华为邮箱登录入口,石家庄电商网站,东莞厚街网站建设在之前的文章中#xff0c;我们学习了如何在scala中定义与使用集合和元组。想了解的朋友可以查看这篇文章。同时#xff0c;希望我的文章能帮助到你#xff0c;如果觉得我的文章写的不错#xff0c;请留下你宝贵的点赞#xff0c;谢谢。 Spark-Scala语言实战#xff08;…在之前的文章中我们学习了如何在scala中定义与使用集合和元组。想了解的朋友可以查看这篇文章。同时希望我的文章能帮助到你如果觉得我的文章写的不错请留下你宝贵的点赞谢谢。 Spark-Scala语言实战4-CSDN博客https://blog.csdn.net/qq_49513817/article/details/136881756?spm1001.2014.3001.5501 目录 一、知识回顾 二、Scala类与对象 1.类Class和对象Object Person类 PersonApp对象 2.构造器Constructor PersonApp对象 局部类Person 对象创建和方法调用 3.伴生对象Companion Objects 三、例题演练 1、定义一个高阶函数 2、定义一个高阶函数 3、对数据中的元素按照指定规则进行分组 4、根据指定规则对数组所有元素聚合 拓展-类和对象 一、知识回顾 在上一篇函数中我们学习了集合创建集合的方法有三种分别是List、Set和map 而我们的元组则不需要用特殊的关键字可以直接创建 现在开始今天的学习吧 二、Scala类与对象 1.类Class和对象Object 类定义了对象的属性和方法。在Scala中我们可以使用class关键字来定义一个类。而对象是类的实例我们可以使用new关键字来创建类的对象。 例 package com.tipdm.scalaDemoobject PersonApp {def main(args: Array[String]): Unit {// 创建Person对象val peng new Person// 设置属性peng.name pengpeng.age 18// 调用方法peng.introduce() // 应该输出: Hello, my name is peng and I am 18 years old.} }class Person {var name: String _var age: Int _def introduce(): Unit {println(sHello, my name is $name and I am $age years old.)} } 在我的代码中我运用到了 Person类 定义了一个名为Person的类。类中有两个变量属性name表示人的名字和age表示人的年龄。这两个变量都被初始化为占位符_表示它们可以在创建对象后被赋予具体的值。类中定义了一个方法introduce这个方法没有参数返回类型为Unit相当于Java中的void。当调用这个方法时它会打印出一条包含name和age属性值的问候信息。 PersonApp对象 定义了一个名为PersonApp的单例对象。在Scala中单例对象类似于Java中的静态类或单例类用于包含程序的入口点或其他共享功能。PersonApp对象中包含一个main方法这是Scala应用程序的入口点。当你运行Scala程序时JVM会调用这个main方法开始执行程序。在main方法中首先创建了一个Person类的实例peng。然后通过peng对象设置了name属性为peng和age属性为18。最后调用了peng对象的introduce方法该方法会打印出一条问候信息内容应该是“Hello, my name is peng and I am 18 years old.”。 看一下输出吧 2.构造器Constructor Scala的类可以有一个或多个构造器它们用于初始化对象的属性。在Scala中主构造器的参数直接定义在类定义中而辅助构造器使用this关键字来调用。 package com.tipdm.scalaDemoobject PersonApp {def main(args: Array[String]): Unit {class Person(val name: String, val age: Int) {def introduce(): Unit {println(sHello, my name is $name and I am $age years old.)}}val bob new Person(peng, 18)bob.introduce() // 输出: Hello, my name is peng and I am 18 years old.} }在以上代码中我的方法是 PersonApp对象 定义了一个名为PersonApp的单例对象它是程序的入口点。在PersonApp对象内部定义了main方法这是Scala应用程序的入口点。 局部类Person 在main方法内部定义了一个局部类Person。这个类接受两个参数name表示人的名字和age表示人的年龄。这两个参数被声明为val意味着它们是不可变的并且在对象创建时就需要被初始化。类中定义了一个方法introduce用于打印出一条包含name和age属性值的问候信息。 对象创建和方法调用 在main方法中创建了一个Person类的实例bob并传入了名字peng和年龄18作为构造参数。接着调用了bob对象的introduce方法该方法会打印出一条问候信息。 3.伴生对象Companion Objects 在Scala中每个类都有一个与之关联的伴生对象。这个对象与类共享相同的名称并且它的定义位于类定义的外部。伴生对象可以包含静态方法或字段这些方法和字段可以通过类名直接访问。 package com.tipdm.scalaDemoobject PersonApp {object PersonUtils {def greet(name: String): Unit {println(sHello, $name!)}}class Person(val name: String) {def introduce(): Unit {println(sMy name is $name.)}} }object Main {def main(args: Array[String]): Unit {PersonApp.PersonUtils.greet(peng) //val charlie new PersonApp.Person(peng)charlie.introduce()} }看下输出 三、例题演练 1、定义一个高阶函数 按照指定的规则对集合里面的每个元素进行操作 比如: Array(“hh”,“red”,“java”,“hadoop”) 规则: 对集合中每个元素进行操作得到集合每个元素的长度 package com.tipdm.scalaDemoobject p6 {def main(args: Array[String]): Unit {def ppp(arr: Array[String]): Array[Int] {arr.map(element element.length)}val array Array(hh, red, java, hadoop)val lengths ppp(array)val p lengths.toList // 将数组转换为列表println(p) // 输出: List(2, 3, 4, 6)} } 2、定义一个高阶函数 对数据中的元素按照指定的规则进行过滤 比如: Array(1,4,7,9,10,6,8,99,88,66) 规则: 只保留偶数数据 package com.tipdm.scalaDemoobject p6 {def main(args: Array[String]): Unit {def peng(arr: Array[Int]): Array[Int] {arr.filter(number number % 2 0)}val numbers Array(1, 4, 7, 9, 10, 6, 8, 99, 88, 66)val ppp peng(numbers)val p1 ppp.toList // 将数组转换为列表println(p1) // 输出: List(4, 10, 6, 88, 66)} } 3、对数据中的元素按照指定规则进行分组 比如:Array(“zhangsan shenzhen man”,“lisi beijing woman”,“zhaoliu beijing man”) 规则: 按照地址进行分组 package com.tipdm.scalaDemoobject p6 {def main(args: Array[String]): Unit {def p1(arr: Array[String]): Map[String, List[String]] {arr.groupBy(person person.split( )(1)).mapValues(_.toList) // 将每个地址对应的数组转换为列表}val people Array(zhangsan shenzhen man, lisi beijing woman, zhaoliu beijing man)val newp1 p1(people)println(newp1)} } .mapValues(_.toList): 由于groupBy返回的映射的值是数组所以这里使用mapValues方法来转换这些数组为列表。_.toList是一个简短的lambda表达式它接受一个数组并返回该数组的列表形式。 4、根据指定规则对数组所有元素聚合 比如:Array(10,4,6,10,2) 规则: 求和/求乘积 求和 package com.tipdm.scalaDemoobject p6 {def main(args: Array[String]): Unit {def peng(arr: Array[Int]): Int {arr.sum}val pp Array(10, 4, 6, 10, 2)val sum peng(pp)println(sum) // 输出: 32} }求乘积 package com.tipdm.scalaDemoobject p6 {def main(args: Array[String]): Unit {def peng(arr: Array[Int]): Int {arr.product}val pp Array(10, 4, 6, 10, 2)val product peng(pp)println(product) // 输出: 4800} }拓展-类和对象 示例 方法名称描述__init__构造函数用于初始化对象的状态。在创建对象时自动调用。get_attribute获取对象的某个属性值。set_attribute设置对象的某个属性值。do_action执行某个操作或任务可能涉及修改对象的状态或与其他对象交互。is_condition_met检查对象的某个条件是否满足并返回布尔值。calculate_result执行计算并返回结果。compare_to将当前对象与另一个对象进行比较并返回比较结果。to_string将对象转换为字符串表示形式。
http://www.pierceye.com/news/31255/

相关文章:

  • 怎样申请建网站网站设计的主要机构有哪些
  • 长宁哪里有做网站优化比较好网站建设捌金手指花总十三
  • 电子商务网站建设期末试题08答案百度公司销售卖什么的
  • 青岛做网站哪家公司好网店美工设计的四大要点
  • 南宁区建设银行招聘网站去除wordpress版权信息
  • 怎么建设网站临汾做网站需要几个程序
  • 手机购物网站 设计wordpress如果有图片显示图片
  • 官方网站内容可做证据吗wordpress docker安装目录
  • 物价局网站建设情况汇报网络及it维护外包
  • 教育局网站建设如何构建大型网站架构
  • 广东企业网站模板定制学生兼职网站开发
  • 电子商务网站建设与电子支付做eso哪家网站好
  • 电子商务网站规划从哪些方面入手移动互联网站建设
  • 湖南省建设厅官方网站官网做外贸的人如何上国外网站
  • 网站开发的软件环境设计家官网室内设计视频
  • 贵州网站定制搬瓦工装WordPress
  • 别人用我公司权限做网站广州互帮物流哪家公司做的网站
  • 非认证公众号wordpress郑州网站关键词优化
  • 网站怎么做导航栏网站开发常用工具
  • 林州网站建设服务上海网站怎么备案号
  • 东莞seo整站优化wordpress页眉插件
  • 中信建设有限责任公司陶扬深圳网站优化公司哪家好
  • 学做网站要什么学历免费游戏链接入口
  • 济南 网站建设那家好网页设计怎么做版式
  • 医院网站建设原理网页布局代码
  • 建筑企业登录哪个网站jquery 做网站
  • 天津市做网站wordpress 订单
  • 网址导航网站建设网站建立免费
  • 上海网站建设开发哪广告设计与制作学啥
  • 内网网站建设的必要性芜湖网站建设优化