现在注册

登录

忘记密码

忘记密码? 请输入您的电子邮件地址. 您将收到一个链接,将创建通过电子邮件新密码.

添加后

你必须登录后添加 .

添加问题

您必须登录才能提问.

登录

现在注册

欢迎Scholarsark.com! 您的注册将授予您访问使用该平台的更多功能. 你可以问问题, 做出贡献或提供答案, 查看其他用户以及更多的个人资料. 现在注册!

LinkedIn skill assessment answers and questions — Scala

斯卡拉 has emerged as a powerful and versatile programming language that combines functional and object-oriented paradigms, offering developers a robust platform for building scalable and efficient applications. 在这份综合指南中, we’re excited to present a curated collection of skill assessment questions答案 对于 斯卡拉.

Whether you’re a seasoned developer looking to enhance your skills or a newcomer eager to explore the world of functional programming, this resource is designed to help you master 斯卡拉 and its innovative features. Join us as we delve into the fundamentals of 斯卡拉 程序设计, including immutability, pattern matching, higher-order functions, 和更多, empowering you to leverage the full potential of this dynamic language.

第一季度. Scala bytecode can run on top of Java VM. What is the fundamental difference between Java object.clone() and Scala object.copy()?

  • One is a Java object, the other is a Scala object.
  • 克隆() will copy class structures but not the data, while copy() will also copy data into new objects.
  • There is no difference.
  • 复制() allows you to change values during the copying process; 克隆() 才不是.

Q2. What value does this code return?

val m1 = Map("a"->1,"b"->2,"c"->3)
m1("a")
  • 一个
  • 2
  • b
  • 1

Q3. What is one way to avoid low-level parallelization details?

  • monads
  • literal functions
  • partially applied functions
  • parallel collections

第四季度. What do you use in ScalaTest to see a detailed diagram of error messages when a test fails?

  • ArgumentExceptions
  • AssertionException
  • DiagrammedAssertions
  • JUnit

Q5. What data type would you use to store an immutable collection of objects that contain a fixed number of varying types?

  • 大批
  • ImmutableCollection
  • 列表
  • 元组

Q6. After defining a function in the interpreter, Scala returns the following. 什么是 () 表明?

myfnc: ()Unit
  • The function has no side effects.
  • The function takes no parameters.
  • The function returns no value.
  • Returning unit types to the function is a closures.

Q7. What type of number is 1234.e5?

  • 十六进制
  • 短的
  • floating point

Q8. When you convert a map to a list using the toList method of the map, the result will be of which type?

  • List[(String, String)]
  • List[(Array, Array)]
  • List[(Collection, Collection)]
  • List

Q9. What type of object does this code create?

val x = (1234, "Active")
  • 列表
  • 地图
  • 元组
  • 大批

辅酶Q10. Which is a subclass of all classes?

  • AnyVal
  • AnyRef
  • 方法
  • Null

Null in Scala Standard library. The question is a bit incorrectNull is a subtype of every type except those of value classes

Q11. For the for-yield construct, is the scope separate between for-body and yield-body?

  • Yes and no. It is different depending on the for construct and what it does.
  • 是, because the for section does not expose its scope.
  • 没有, because for-yield shares the same scope, even though they are within separate curly braces.
  • 是, because they are within different curly braces.

: yield-body has access to the e variable from the for-body

val a = Array(1, 2, 3, 4, 5)
for {
     e <- a if e > 2
} yield e

Q12. What is one way to implement pattern matching on methods?

  • using regex
  • using monads
  • using string matching
  • using case classes

注意: ambiguous question, it’s not clear what kind of pattern matching is meant here.

Q13. What is the value of z after executing this code?

val y = List('a','b')
val z = y::List('c')
  • 列表(一个,b,C)
  • 列表(列表(一个, b), C)
  • 列表(C,一个,b)
  • 列表(C,列表(一个,b))

Q14. What term is used to specify a precondition?

  • assert
  • 要求
  • precondition
  • mustHave

Q15. Which Scala type may throw an exception or a successfully computed value, and is commonly used to trap and propagate errors?

  • scala.util.ExceptionHandling
  • scala.Catch.Throw
  • scala.exception.TryFinally
  • scala.util.Try

scala.util.Try

Q16. What is the data type of y after this code is executed?

val y = (math floor 3.1415 * 2)
  • 短的
  • 双倍的
  • 整数
  • bigInt

Q17. When using pattern matching, which character matches on any object?

  • %
  • _
  • ^
  • -

Pattern Matching

Q18. You have created an array using val. Can you change the value of any element of the array—and why or why not?

  • 是, the reference to the array is immutable, so the location that the array points to is immutable. The values in the array are mutable.
  • The 0th element is immutable and cannot be modified. All other elements can be modified.
  • 是, val does not make arrays immutable.
  • 没有, val makes the array and values of the array immutable.

解释:

val a1 = Array(1, 2, 3)
a1{1} = 3 // OK
a1 = Array(1, 3, 3) // error: reassignment to val

Q19. What is the output of this function?

def main () {
     var a = 0
     for (a<-1 until 5){println(a)}
  • 1,2,3,4,5
  • 0,1,2,3,4
  • 1,2,3,4
  • 2,3,4,5

Q20. What do you call objects with immutable state?

  • singletons
  • stationary objects
  • functional objects
  • fixed objects

注意: singletons may have mutable state

Q21. You have written a Scala script. How would you access command-line arguments in the script?

  • use array named args
  • use tuple named args
  • use numbered variables with a _ prefix for example _ 1, _ 2, _ 3
  • use numbered variables with a $ prefix – 例如 $1, $2, $3

Q22. What does this code return? val x = 3; if (x > 2) x = 4 else x = x*2

  • 4
  • an error
  • 6
  • 3

Q23. Which statement returns a success or a failure indicator when you execute this code?

val MyFuture = Future {runBackgroundFunction() }

  • myFuture.onComplete
  • myFuture(status)
  • myFuture.Finished
  • 完全的(myFuture)

Q24. To denote a parameter that may be repeated, what should you place after type?

  • %
  • &
  • _
  • -

Q25. What is called when a superclass has more than one subclass in Scala?

  • polyinheritance
  • multilevel inheritance
  • multimode inheritance
  • hierarchical inheritance

Q26. One way to improve code reliability is to use __ , which will evaluate a condition and return an error if the condition is violated.

  • 包裹
  • polymorphisms
  • assertions
  • traits

Q27. Which statement about if-else-if-else statements is true?

  • If the first else-if does not succeed, then no other else-ifs are tested.
  • If an else-if does not succeed, then none of the remaining else-if statements or elses will be tested.
  • All else-if statements are tested in all cases.
  • If an else-if succeeds, then none of the remaining else-if statements or elses will tested.

Q28. What do you call the process of changing the definition of an inherited method?

  • recursive methods
  • currying methods
  • redefining methods
  • overriding methods

Q29. To denote a parameter that may be repeated, what should you place after the type?

  • _
  • *
  • %
  • &

Repeated Parameters in Scala

Q30. What is the code below equivalent to?

myClass.foreach(println _)
  • myClass.foreach(println ())
  • myClass.foreach(print NIL)
  • myClass.loop(println ())
  • myClass.foreach(x => println(x))

Q31. What is an advantage of an immutable object?

  • Immutable objects use less memory than their mutable counterparts.
  • Immutable objects do not require error handling.
  • Immutable objects can be used in classes, mutable objects cannot.
  • Immutable objects are threadsafe.

Q32. You want to create an iteration loop that tests the condition at the end of the loop body. Which iteration would you use?

  • do-while loop
  • while 循环
  • for循环
  • do-until loop

Q33. What can you use to make querying a database more efficient, by avoiding the need to parse the SQL string every time a query is executed from Scala?

  • database driver
  • 联系
  • prepared statement
  • SQL view

PreparedStatement from Java which is also used in Scala

Q34. Which is a member of the collections hierarchy?

  • Seq
  • Hash
  • 地图

Q35. Which term makes the contents of packages available without prefixing?

  • 采用
  • 包括
  • 进口
  • assertion

Q36. If you wanted to find the remainder after division, what operator would you use?

  • %
  • DIV
  • //
  • /

Q37. What are defined inside a class definition?

  • 方法
  • fields and methods
  • 字段, 方法, and packages
  • 字段

Q38. What defines methods and fields that can then be reused by mixing into classes?

  • singleton
  • assertion
  • trait
  • monad

Q39. When do you need to explicitly state the return type in a function definition?

  • when the function has no side effects
  • when the function returns a Unit type
  • when the function is recursive
  • when the function has side effects

Q40. Why would you make a field private?

  • so only methods in the same file can access the field
  • so only methods in the same package can access the field
  • so only methods in the same class could access the field
  • so only methods defined in a Java class can access the field

Q41. What’s the difference between .equals==?

  • They do the exact same thing
  • == won’t work on objects
  • == cannot be applied to String
  • == is a wrapper of .equals() and checks for nulls

资源:

Q42. What is denotes the intersection between two sets?

  • ||
  • &&
  • &
  • %

资源:

Q43. What do you call a function defined in a block?

  • private function
  • block function
  • local function
  • 方法

A function defined within a block of code, such as within a method or another function, is called a local function. This is because it is only visible and accessible within the scope of the block in which it is defined, and is not accessible outside of that block.

Q44. What do you call a Scala method that is parametrized by type as well as by value?

  • multimode method
  • polymorphic method
  • closure
  • collection method

Q45. What type of exception is thrown when a precondition is violated?

  • IllegalArgumentException
  • NumberFormatException
  • NullPointerExcepetion
  • MalformedParameterException

Q46. In scala what is precondition?

  • a constraint on where a method may be called from
  • a constraint on values passed to a methode constructor
  • a class of predifined error messages
  • a class of Boolean operators

Q47. What would you change in this code to make it execute in parallel?

 val myNums = (1 to 500).toList
 list.map(_ + 1)
  • 改变 list.maplist.par.map.
  • 改变 toListtoListPar
  • 改变 valval.par
  • 改变 toListtoParallelList

Q48. What is a free variable?

  • a variable defined outside a function
  • a variable referenced in a function that is not assigned a value by that function
  • a variable that has a global scope
  • a variable defined in a class and available to all methods in that class

Q49. What’s the best way to execute code in the background in a separate thread?

  • AltThread
  • AltFuture
  • AltProcess
  • 未来

辅酶50. What value does this code return?

x= List(1,2,4); x(1)?
  • (1,2,4)
  • 1
  • Nil
  • 2

Q51. Which data type does Scala use instead of null for optional values?

  • Nil
  • Option
  • Singleton
  • 收藏

In Scala, the Option data type is used instead of null for optional values. It is a container that can either hold a value or be empty, and it is used to represent the presence or absence of a value. This makes it safer to work with than using null, as it eliminates the risk of null pointer exceptions.

Q52. What is equivalent to this code?

s"Foo $a?"
  • Foo ” + 一个 + “?”

Q53. Which expression is one way to iterate over a collection and generate a collection of each iteration’s result?

  • for-yield
  • for-collect
  • for-collect until
  • collectuntil
  • for-yield is one way to iterate over a collection and generate a collection of each iteration’s result. The for loop with the yield keyword is used to iterate over a collection and generate a new collection with the results of each iteration.

Q54. Which statement accesses the third element of an array named foo?

  • foo[2]
  • foo(3)
  • foo[3]
  • foo(2)
  • In many programming languages, arrays are indexed starting at 0, so the first element of the array is at index 0, the second element is at index 1, 等等. 因此, to access the third element of an array namedfoo”, you would use the index 2 (since the array is indexed starting at 0). This can be done using the syntax foo[2] or foo(2) depending on the programming language. In some languages like Java, you can use foo[2] or foo[3] to access the third element.

Q55. What data type would you use to store an immutable collection of objects when you don’t know how many members will be in the collection?

  • 元组
  • 列表
  • Object
  • 大批
  • You would use a List data type to store an immutable collection of objects when you don’t know how many members will be in the collection. Lists are indexed collections of elements that can be accessed by their position in the list, and they are commonly used to store collections of items that need to be processed in order. 另外, Lists are immutable, which means that their elements cannot be modified once they have been created, making them ideal for use cases where data integrity is important.

Q56. From where do all classes in Scala inherit?

  • AnyRef
  • AnyColl
  • AnyVal
  • AnyClass
  • All classes in Scala inherit from the AnyRef class by default. AnyRef is the base class for all reference types in Scala, and it is equivalent to the java.lang.Object class in Java. AnyVal is the base class for all value types in Scala, and Any is the base class for all types in Scala.

Q57. In Scala, what is a precondition?

  • A class of boolean operators
  • A class of predefined error messages
  • A constraint on values passed to a method or constructor
  • A constraint on where a method may be called from
  • A precondition in Scala is a constraint on the input values passed to a method or constructor, specifying the conditions that must be met for the method or constructor to execute correctly. It is used to check the validity of input values before the method or constructor is executed, and can be used to ensure that the method or constructor is called with the correct arguments.

Q58. Which code sample will print the integers 1 通过 4, each on a separate line?

  • 对于(一世 <- 0 至 4) println(一世)
  • 对于(一世 <- 0 至 3) println(i+1)
  • 对于(一世 <- 1 至 8 if i < 5) println(一世)
  • 对于(一世 <- 1 至 4) println(一世)
  • The correct answer is for(一世 <- 0 至 3) println(i+1) because it will start the iteration from 0 and end at 3, incrementing the value by 1 each time and printing it.

Q59. Which operator should you use to take the intersection of two sets?

  • &
  • ||
  • &&
  • %
  • 该 & or intersect method can be used to take the intersection of two sets in Scala.

Q60. Which data type does Scala use instead of null for optional values?

  • Nil
  • Option
  • Singleton
  • 收藏
  • In Scala, the Option data type is used instead of null for optional values. It is a container that can either hold a value or be empty, and it is used to represent the presence or absence of a value. This makes it safer to work with than using null, as it eliminates the risk of null pointer exceptions.

Q61. What is the difference between a Scala trait and an interface?

  • A trait can have concrete implementations, while an interface cannot.
  • An interface can have concrete implementations, while a trait cannot.
  • Traits can be mixed together, while interfaces cannot.
  • Interfaces can be mixed together, while traits cannot.

参考

关于 海伦·贝西

你好, I'm Helena, 一位热衷于在教育领域发布有洞察力内容的博客作者. 我相信教育是个人和社会发展的关键, 我想与所有年龄和背景的学习者分享我的知识和经验. 在我的博客上, 您会找到有关学习策略等主题的文章, 在线教育, 职业指导, 和更多. 我也欢迎读者的反馈和建议, 所以请随时发表评论或联系我. 我希望您喜欢阅读我的博客并发现它有用且鼓舞人心.

发表评论