Scala
文章平均质量分 62
scala的基本语法
半臻(火白)
技术栈:Python、Java、大数据、人工智能
展开
-
Scala基础11——第11章:泛型
第11章 泛型// Array[String] 使用了泛型为String的Arraydef main(args:Array[String]):Unit={}为什么要用泛型:如果使用Any的话,就需要进行强转,强转可能会出现一些意外情况11.1 协变和逆变class MyList[+T] // 协变class MyList[-T] // 逆变class MyList[T] // 不变协变: Son是Father的子类,则MyList[Son]也是MyList[Father]的子类原创 2021-08-20 21:37:21 · 186 阅读 · 0 评论 -
Scala基础10——第10章:隐式转换
第10章 隐式转换 当编译器第一次编译器失败的时候,会再次编译,用于将类型进行转换,实现二次编译。 二次编译的时候,实现隐式转换10.1 隐式函数object Test02{ def main(args:Array[String]):Unit={ val new12 = new MyRichInt(12) println(new12.myMax(15)) // 比较12 和 15的大小,返回较大的数原创 2021-08-20 21:36:45 · 189 阅读 · 0 评论 -
Scala基础9——第9章:异常
第9章 异常9.1 Java的异常处理try{ int i = 1/0;}catch(Exception e){ e.printStackTrace()}finally{ // 无论如何都会执行}9.2 Scala异常处理try{ var n = 10/0}catch{ case ex:ArithmeticException=>{ println("算数错误") } case ex:Exception=>原创 2021-08-20 21:35:50 · 125 阅读 · 0 评论 -
Scala基础8——第8章:模式匹配
第8章 模式匹配 Scala中的模式匹配,类似于Java中的switch语法8.1 基本语法 模式匹配语法中,采用match关键字声明,每个分支采用case关键字进行声明。 match语法中没有break语句 case _ 默认值, 如果没有case _ 则会抛出异常MatchError。 注:默认值并不需要一定是case _ ,下划线只是一个通配符,下划线可以是任意的变量名,如case a、 case abc 、case _object Test01{ def main(a原创 2021-08-20 21:35:09 · 127 阅读 · 0 评论 -
Scala基础7——第7章:集合
第7章 集合7.1 集合介绍 (1)Scala的集合有三大类:序列Seq、集Set、映射Map Java的集合也有三大类,List、Set、Map。 List和Set同属于Collection的子类, (2)在Scala中,几乎所有的集合类,都提供了可变和不可变的版本,分别位于以下两个包 不可变集合: scala.collection.immutable 可变集合: scala.collection.mutable (3) Scala不可变集合:该集合对象不可修改,每次原创 2021-08-20 17:25:06 · 121 阅读 · 0 评论 -
Scala基础6——第6章:面向对象
第6章、面向对象6.1 Scala包(1)基本语法 package 包名(2)包的三大作用(和java一样) ① 区分相同名字的类 ② 当类很多,可以很好的管理类 ③ 控制访问范围6.1.1 包的命名1)命名规则 值包含数字、字母、下划线。不能以数字开头,也不要使用关键字2)命名规范 小写字母+小圆点 com.公司名.项目名.业务名6.1.2 包说明 包名和源文件不需要在同一个地址 用.来分割表示包的层级关系 scala的包可以使用Java原创 2021-08-19 11:15:36 · 316 阅读 · 0 评论 -
Scala基础5——第5章:函数式编程
第5章:函数式编程(1)面向对象编程 解决问题,分解对象,行为,属性,然后通过对象的关系以及的调用来解决问题 对象:用户 行为:登录、连接JDBC、读取数据库 属性:用户名、密码 Scala语言是一个完全面向对象编程语言。万物皆对象 对象的本质:对数据和行为的一个封装(2)函数式编程 不断的对表达式求值 y=f(x)5.1 函数基本语法(1)基本语法// sum函数名// (x:Int,y:Int)参数名,参数类型// : Int = {} 返回值类型原创 2021-08-17 12:17:57 · 207 阅读 · 0 评论 -
Scala基础4——第4章:流程控制
第4章:流程控制4.1 分支控制 if-else分支控制有三种:单分支、双分支、多分支。scala中没有switch语法(1)基本语法// 单分支println("请输入你的年龄")val age:Int = StdIn.readInt()if (age >= 18) println("成年")// 双分支if (age >= 18){ print("成年")}else{ println("未成年")}// 多分支if(age <= 6){原创 2021-08-17 12:16:56 · 80 阅读 · 0 评论 -
Scala基础3——第3章:运算符
第3章:运算符3.1 算术运算符运算符运算范例结果+正号-负号+加5+510-减6-42*乘3*412/除5/51%取模(取余)7%52+字符串相加“He"+“llo”Helloobject Test01{ def main(args:Array[String]):Unit={ val result1 = 10/3 print原创 2021-08-17 12:16:07 · 144 阅读 · 0 评论 -
Scala基础2——第2章:变量和数据类型
第2章、变量和数据类型2.1 注释 scala的注释和Java完全一样。 (1)单行注释 // (2)多行注释 /* 注释内容 */ (3)文档注释/**** @param args*/def main(args:Array[String]):Unit={ } 代码规范 (1)使用一次tab操作,进行缩进 (2)运算符之间,添加一个空格,如2 + 4 * 5 (3) 一行最长不超过80个字符。2.2 变量和常量(重点) 常量:运行时值不原创 2021-08-16 13:41:32 · 208 阅读 · 0 评论 -
Scala基础1——第一章:Scala入门
第1章、Scala入门1.1 概述1.1.1 为什么要学习Scala (1)Scala基于JVM,和Java完全兼容,具有跨平台、可移植性好、方便的垃圾回收等特性 (2)Scala比Java更加面向对象。(比Java更加纯粹) (3)Scala是一门函数式编程语言。 (4)Scala更适合大数据的处理 (5)Scala对集合类型数据处理有非常好的支持 (6)Spark的底层用Scala编写1.1.2 Scala发展历史 Scala之父马丁奥德斯基从2001年开始设计Scal原创 2021-08-16 13:40:35 · 785 阅读 · 0 评论