什么是Scala?
Scala是一种高级语言,静态类型的语言,它支持OOPS概念以及功能性编程概念。Scala语言是用Java编写的(可选)。
这可能会说服访调员询问静态类型语言和动态类型语言之间的区别。
在静态类型语言中,类型检查在编译时完成,而在动态类型语言中,类型检查在运行时完成。
这将是任何Scala面试中的第一个问题。请记住,面试官并不是在寻找一个出色的开箱即用的答案。像这样的简单答案会很好。
什么是Scala REPL?
Scala REPL是Read-Evaluate-Print-Loop。它是为Scala设计的命令行解释器。
Val和var类型的变量有什么区别?
Val - Immutable var - Mutable
在Scala中可以使用switch语句吗?
不,Scala代替switch使用了match语句,该语句类似于switch语句。
Scala是否支持框架的使用?
是的,Scala支持使用Play框架,Akka框架等框架。
什么是Scala中的流?
由于Scala支持延迟评估,因此Streams只是延迟列表。流中的元素被懒惰地求值(仅在需要时)。流是由#::运算符构造的。
解释Scala中方法定义的语法
def 'method_name' ('parameters':'return_type_parameters') : ('return_type_of_method') = { 'method_body' return 'value' }
Scala中的tail()方法是什么?
tail()方法与head()方法正好相反。它返回除第一个元素外的所有元素。
定义高阶函数
高阶函数将其他函数用作参数或返回结果。
val number_list = List(1, 22, 333) // Method def addOne = (num: Int) => num + 1 // A higher order function val result = number_list.map(num => multiplyValue(num))
该地图功能最常用的一个内置在Scala中的高阶函数。
在Scala中定义特征?举个例子。
特质类似于具有部分实现的接口。在scala中,特征是抽象和非抽象方法的集合。
一个特征可以具有所有抽象方法,也可以具有某些抽象方法和一些非抽象方法。
在特征中声明的变量在实现该特征的类中内部实现,但是如果已声明但未初始化的变量被认为是抽象的。
trait Player{ def sports() } class Cricketer extends Player{ def sports(){ println("I play Cricket") } } object MainObject{ def main(args:Array[String]){ var player = new Cricketer() player.sports() } }
什么是匿名函数?如何声明一个?
匿名函数是没有名称的函数。Scala使用轻量级语法来声明匿名函数。
// An anonymous function to concatenate two strings var concatenate = (str1:String, str2:String) => str1 + str2
期权在Scala中的作用是什么?地图的get方法中如何使用Options?
该 选项代表可选值。的情况下,选择要么实例有些 或 无。
如果找到了与给定键相对应的值,Scala的Map的get方法将生成Some(value);如果未在Map中定义给定的键,则将产生None(值)。
val medals = Map("Gold" -> "Brazil", "Silver" -> "Germany", "Bronze" -> "Nigeria") medals.get( "Gold" ) //Some(Brazil) medals.get("Diamond") //None
如何运行一个简单的Scala程序?
1.使用scalac- scalac Dzone.scala编译代码
2.使用scala-scala Dzone运行代码
for循环如何使用yield?
对于for循环的每次迭代,yield都会生成一个要记住的值。当for循环完成运行时,它将返回所有产生的值的该集合。返回的集合的类型与您要迭代的类型相同,即,如果在Map上完成迭代,则将返回Map,如果在List上进行迭代,则将返回列表。
在Scala中定义Nil,None和Nothing?
println(Nil) //Output - List()
我们在哪里得到Scala这个名字?
根据Scala的官方文档:
该名称来自两个来源。首先,“ Scala”是意大利语中的“楼梯”一词,由于Scala可帮助您提升为更好的编程语言,因此它是适当的。Scala徽标是楼梯的抽象。此外,斯卡拉代表SCA拉布勒LA nguage,因为Scala的概念很好地扩展到大型程序。
Scala中所有类的超类是什么?
所有类的超类都是scala。
Scala中的Function和Method有什么区别?
Scala支持功能和方法。方法和函数的语法相同。
两者的主要区别:
甲方法可以在这意味着一个方法与对象相关联Scala的类或性状来定义。我们可以通过使用Class的实例来调用方法。没有对象就无法直接使用方法。
函数在Scala包中定义。它们与类别或特质无关。就像Java的静态方法一样,可以在不使用对象的情况下调用它们。 感谢您的阅读.....也祝您面试顺利。
原文链接:codingdict.com