MCQSS.com ofrece preguntas y respuestas gratuitas sobre Scala que abarcan una amplia variedad de temas. Nuestro formato interactivo te permite saber al instante si has respondido correctamente a las preguntas. ¡Explora nuestra colección de preguntas de opción múltiple y pon a prueba tus conocimientos sobre Scala hoy mismo! No es necesario comprar una membresía o registrarse, puedes utilizar nuestro sitio de forma gratuita. No pierdas la oportunidad de mejorar tus habilidades y prepararte para exámenes con MCQSS.com.
A. "&"
B. "@"
C. ps
D. "_"
A. Private [EjemploPackage] def foo = {...}
B. paquete [ejemplopackage] def foo = {...}
C. def foo = {...} // Acceso predeterminado
D. paquete def foo = {...} // paquete privado
E. [EjemploPackage] private def foo = {...}
A. Lista (1,2,3) :: Lista (5)
B. Lista (1,2,3) + 5
C. Lista (1,2,3):+ 5
D. Lista (1,2,3) :: = 5
E. Lista (1,2,3) :: 5
A. Un valor predeterminado, solo utilizado si la lista está vacía
B. Una lista, a la que se agregan los resultados.
C. El "acumulador", que es el valor inicial para `b`
D. El "acumulador", que es el valor inicial para `a`
A. AnyRef es el objeto raíz en Scala
B. No hay tal clase
C. Anyref se deriva de Anyval
D. Todos los tipos excepto los tipos de valor descienden de cualquierref
A. Un parámetro de tipo que se soluciona cuando la clase está subtitada.
B. Un parámetro de tipo que puede variar para super tipos.
C. Un parámetro de tipo que se fija para super tipos.
D. Un parámetro de tipo que puede variar hacia abajo ya que la clase está subtitada.
A. Sí, el tiempo de ejecución de JVM admite la optimización de llamadas de cola.
B. No
C. En parte a nivel del compilador. El compilador intentará relajarse la llamada recursiva en un bucle.
D. En parte, porque la pila es infinita en Scala.
A. Nada
B. nulo
C. Lista()
D. Ninguno
A. El enlace de datos
B. Tipos unificadores
C. Clases de sellado
D. Zurra
A. Funciones
B. Parámetros
C. Conceptos
D. Construcciones
A. Por inferencia
B. Por valor
C. Por nombre
D. Por referencia
A. Las clases de casos como selladas y por lo tanto no se pueden extender
B. Puede construir instancias de estas clases sin usar la nueva palabra clave
C. El método de tostring se redefinea automáticamente
D. El método igual se redefine automáticamente
A. La operación "doblar"
B. La suma actual mientras itera a través de la lista
C. El siguiente elemento en la lista
D. El valor de retorno para la expresión
A. Al aplicar la función, no transmite argumentos para todos los parámetros definidos por la función, sino solo para algunos de ellos, dejando a los restantes en blanco
B. Una función que admite el curry
C. Una función parcialmente definida.
D. Un tipo de función interna que utiliza el paquete scala.collection.immutable.
A. Lista [cualquiera]
B. Lista [int]
C. Lista [AnyRef]
D. Lista [Boolean]
E. Lista [AnyVal]
A. Clase base
B. Sobrescrito
C. Súper clase
D. Clase
A. No existe una clase sellada.
B. Una subclase de una clase sellada puede heredar en cualquier lugar solo dentro del mismo paquete.
C. Una clase sellada puede no estar directamente heredada, excepto si se define en el mismo archivo de origen.
D. Las instancias de una clase sellada no se pueden modificar.
A. ~
B. *
C. !
D. |
A. 22
B. dieciséis
C. 2
D. 20
A. Polimorfismo subtipo, ad-hoc y paramétrico
B. Subtipo y paramétrico
C. Ninguno de esos
D. Paramétrico
E. Ad-hoc y paramétrico
A. Tipo seguro
B. Tipo de llamada
C. Escriba Bound
D. Función de tipo
A. Cree automáticamente una lista [t] con x e y como miembros con t de tipo 'int'
B. una tupla con arity 2
C. asignar 100 a la variable y
D. tratar a X e Y como las mismas referencias en el código adicional
E. producir un error de compilación
A. Verdadero
B. FALSO
A. Una clase simple
B. Un marcador de posición
C. Un guardia
D. Una función
A. (Lista (1,2,3), Lista (4,5,6))
B. Lista (1,2,3,4,5,6)
C. 21
D. Lista (5,7,9)
E. Lista ((1,4), (2,5), (3,6))
A. Todos los literales de cadena son una instancia de Scala.Collection.immutable.Stringops
B. Se genera una subclase de java.lang.string en tiempo de ejecución, agregando el método 'longitud' a su firma.
C. Una conversión implícita convierte el java.lang.string en una escala.collection.immutable.stringops, que admite un método de longitud.
D. Todos los literales de cadena se pueden procesar mediante un intérprete de cadena Scala.
A. Scala no admite funciones de orden superior
B. Las funciones de orden superior son funciones sin parámetros que se devuelven a sí mismas
C. Las funciones de orden superior son funciones que toman otras funciones como parámetros.
D. Las funciones de orden superior son funciones que devuelven funciones
A. Un iterador es un tipo de colección
B. Scala no admite iteradores
C. Un iterador es un flujo de elementos entrantes donde avanzar al siguiente elemento consume el elemento actual
D. Un rasgo iterador se mezcla con todos los tipos de recolección
A. FALSO
B. Verdadero
A. Un guardia
B. Un árbol
C. Una matriz
D. Una tarjeta salvaje
A. Se arrojaría un MatchError.
B. No pasaría nada porque "hola" no es de tipo "ninguno"
C. La declaración devolvería "¡Hola!"
D. Se lanzaría una NullPointerException.
A. Un lenguaje dinámico que se puede utilizar para programar en estilo orientado a objetos de manera eficiente
B. Un lenguaje avanzado orientado a objetos mucho mejor que Java que se ejecuta en el JVM
C. Un lenguaje Java avanzado implementado por Martin Odersky
D. Un lenguaje funcional de objetos que admite construcciones de programación funcional
E. Un lenguaje de programación funcional puro
A. Verdadero
B. FALSO
A. Sí, pero solo para rasgos.
B. No
C. Sí, pero no es una Scala Idiomática y, por lo tanto, se desanimó.
D. Sí, todos los métodos y funciones deben tener al menos una declaración de devolución.
A. Verdadero
B. FALSO
A. Interfaz
B. Estructura
C. Argumentos
D. Plataforma
A. "vacío"
B. "Bool"
C. "nulo"
D. "conseguir"
A. Un lenguaje funcional
B. Todas estas opciones describen Scala
C. Un lenguaje orientado a objetos
D. Un idioma que se ejecuta en la VM
A. Un objeto mono
B. Un solo argumento
C. Un objeto singleton
D. Un objeto estático
A. Objetos
B. Métodos
C. Booleanos
D. Operaciones
A. "Scalacom"
B. "cscala"
C. "Scala.comp"
D. "Scalac"
A. scala.anyref
B. Siempre debes especificar súper clase
C. scala.importref
D. uso de Scalac.Ref
A. Verdadero
B. FALSO
A. El orden de la coincidencia del patrón es irrelevante
B. El estanque de la caja debe ser exhaustivo
C. La coincidencia de patrones no funciona con clases de casos
D. Los patrones no funcionan con tipos estructurales
A. público int %plus (int a)
B. No puede definir un operador Scala usando el código fuente de Java.
C. público int #plus (int a)
D. Private int $ plus (int a)
E. público int $ plus (int a)
A. Una lista es una secuencia inmutable finita
B. Una lista es óptima para los patrones de acceso similares a las pilotos (LIFO) (LIFO)
C. La lista es un proxy para java.util.arraylist
D. Una lista es covariante
A. FALSO
B. Verdadero
A. Cadena
B. Cualquier
C. Unidad
A. No
B. Sí
A. devolverá el ninguno porque coincide con 'cualquier cosa'
B. Volverá "¡Hola!" Porque A 'Ninguno' es un tipo de 'opción'
C. No se compilará
D. Devolverá 'cualquier cosa'
A. `() => Unit` no es válido Scala
B. Una función pura
C. Una función literal
D. Una definición de tipo de procedimiento
A. 8
B. 2
C. 30
D. Nada, no hay valor de retorno.
E. 1
A. Una variable que solo se evalúa una vez
B. `Lazy Var` no es compatible con Scala
C. Una variable inmutable
D. Una variable a la que una vez evaluada solo puede ser referenciada por el alcance de creación.
A. Solo si el método espera un solo parámetro.
B. No, a menos que la función admite parámetros de tipo covariante.
C. No, a menos que la función admite parámetros de tipo contravariante.
D. Solo si el método espera una función parcial.
A. x eq y
B. X.Object == Y.Object
C. x == Y
D. x = y
A. Las definiciones predeterminadas para los métodos "iguales" y "hashcode" no se proporcionan
B. Se proporciona una definición predeterminada para el método "tostring" e imprime el valor en un formulario de origen
C. La "nueva" palabra clave no es obligatoria crear instancias de clases de casos
D. Las funciones de Getter se definen automáticamente para los parámetros del constructor
A. La opción [+a] es abstracta.
B. Scala.nothing se deriva de la opción [+a]
C. La opción [+A] está destinada a reemplazar el uso de NULL.
D. Ninguno se deriva de la opción [+a]
A. Las clases de casos vienen con métodos de aplicación y desaprobación.
B. Las clases de casos tienen serializadores predeterminados
C. Las clases de casos siempre son inmutables.
D. Las clases de casos se pueden usar en Matchers.
A. 2
B. Excepción
C. 1
A. i = i + 1
B. i ++
C. II+
D. i += 1
A. una clase abstracta
B. una clase concreta
C. una clase de caso
D. una interfaz
E. un rasgo
A. Kojo
B. Típico
C. Venner
D. Fodem
A. Tipo [Unidad]
B. Clase [Unidad]
C. Unidad
D. Nada
A. Operación
B. Clase
C. Método
D. Ambiente
A. 1
B. 2
C. Excepción
A. Verdadero
B. FALSO
¿Cuál de la siguiente declaración es falsa sobre las funciones en Scala?
A. Es posible definir Def add (x: int, y: int) = x + y as def add (x: int) (y: int) = x + y c) El siguiente código da error de compilación
B. Las funciones que toman otras funciones como parámetros, o cuyo resultado es una función son funciones de orden superior
C. var usererDir = () => {System.getProperty ("user.dir")} println (userDir)
D. Es posible anidar las definiciones de funciones. como def test = {def nestedTest = {println ("NestedTest")} NestedTest}
Usando el fragmento de código a continuación, elija la declaración correcta que explica el error?
El objeto principal extiende la aplicación {def mysum [t <: number] (como: t*): double = as.foldleft (0d) (_ + _.DoubleValue) implícito def intitOinger (n: int) : Entero = nuevo entero (n.toint) var r = mysum (2, 3)} Cuando se cumple produce el siguiente error Main.scala: 4: Error: Tipo de inferencia Argumentos [int] No se ajuste al método de los límites de parámetros de tipo MySum [ T <: número] var r = mysum (2, 3) ^
A. Clase int pertenece a las clases de valor cuyas instancias no se representan como objetos
B. [T <: número] Los límites de tipo significa que t debe ser un subtipo de número
C. No hay una conversión implícita de instancias de int a instancias de doble
D. ¿Importando sca.math.bigint._?
¿Cuál de las siguientes opciones sobre combinadores funcionales es falso?
A. foreach evalúa una función sobre cada elemento en la lista pero no devuelve nada
B. MAP evalúa una función sobre cada elemento en la lista, devolviendo una lista con el mismo número de elementos
C. Encuentre devuelve todos los elementos de una colección que coincida con una función de predicado
D. ZIP agrega el contenido de dos listas en una sola lista de pares
Para el código a continuación, elija la mejor declaración para describir este error?
clase A (n: int) {var value = n} clase B (n: int) {val value = new a (n)} test {def main (args: array [string]) {val x = nuevo b (5) x = nuevo B (6)}} main.scala: 7: Error: reasignación a val x = nuevo b (6) ^
A. Los objetos creados con VAR son inmutables
B. No puedo reemplazar el objeto creado en la línea anterior B (6) con este nuevo.
C. Necesito reemplazar x = nuevo B (6) con x = B (6)
D. Necesito reemplazar x = nuevo B (6) con x = B.Aply (6)
¿Cómo se proporciona constructores sobrecargados en Scala?
A. Use la palabra clave "esto" como def este (...
B. Sobrecarga de la función Aplicar
C. No puede sobrecargar constructores, pero puede hacerlo con funciones
D. Los parámetros con valores predeterminados deben venir antes que los que no tienen valores predeterminados
¿Elige la descripción correcta para ambas expresiones, para las dos expresiones como lo siguiente? Expresión 1 def m1 (i: int) = i+2 expresión 2 (i: int) => i+2
A. La expresión 1 es una función
B. La expresión 2 es un método
C. La expresión 1 es un método
D. La expresión 2 no lo compila
¿Cuál de las siguientes afirmaciones es incorrecta sobre Stream?
A. Puede atravesar la misma corriente y iterador varias veces y obtener el mismo resultado cada vez
B. Transmisión y iterador son cola perezosa
C. En una transmisión una vez calculada, un valor permanece calculado y se reutiliza
D. Stream.fom (1) crea una transmisión para números enteros positivos
¿Cuál de la siguiente declaración de código es correcta, usando el objeto Scala dentro de Java?
A. Scala.util.list <SomeObjectType> Res = Scala.Collection.JavAconverters $ .module $ .seqasjavalistsConverter (variAblename) .asjava ();
B. Scala.util.list <SomeObjectType> Res = Scala.Collection.JavAconverters $ .module $ .seqasjavalistConverter (variAblename) .asjava ();
C. java.util.list <SomeObjectType> Res = Scala.Collection.JavAconverters $ .module $ .seqasjavalistConverter (variAblename) .asjava ();
D. Seq <SomeObjectType> VariAblename = ScalAclass.MethodintThescalAcLass ();
¿Cuál de los siguientes es verdadero para objetos, rasgos y clases?
A. Para crear un programa, debe usar el método principal en la clase
B. Puedes tener múltiples instancias de una clase
C. Un objeto tiene exactamente una instancia, no puede llamar a nuevo MyObject
D. El objeto A se extiende B con C. En esta definición A es el objeto B es clase y C es rasgo
Para el fragmento de código a continuación, elija la expresión que muestra la salida correcta?
El objeto principal extiende la aplicación {val adder = new Adder (2) System.out.println (Adder.apply (4)) Var A = New Adder (4) System.out.println (A.ApplyObj ())} Class adder (x: int) {var y = 5 def aplicar (y: int) = x + y def applyObj () = x + y}
A. 9 Entonces 6
B. Error de compilación
C. 6 Entonces ninguno
D. 6 Entonces 9
Para el fragmento de código a continuación
El objeto principal extiende la aplicación {def mysum [t <: number] (AS: t*): double = as.foldleft (0d) (_ + _.DoubleValue) Def intteinteger implícito (n: int): integer = nuevo entero (n.toint) var r = mysum (2, 3)}
Cuando se cumple produce el siguiente error, elija la declaración correcta que resuelve el error cuando elimina La línea implícita def intteinteger (n: int): integer = new Integer (N.Toint) Main.Scala: 4: Error: Tipo de inferencia Argumentos [int] No se ajuste al método de los límites de parámetros de tipo Mysum [T <: Número] Var r = mysum (2, 3) ^
A. def mysum [t>: número] (como: t*): double = as.foldleft (0d) (_ + _.DoubleValue)
B. def mysum [t <% number] (como: t*): double = as.foldleft (0d) (_ + _.DoubleValue)
C. def mysum [t <: double] (como: t*): double = as.foldleft (0d) (_ + _.DoubleValue)
D. def mysum [t>: double] (como: t*): double = as.foldleft (0d) (_ + _.DoubleValue)
Para el fragmento de código a continuación, elija la declaración correcta?
val aa = bb filtre (x => x % 2 == 0)
A. AA será una nueva colección, mientras que BB seguirá siendo lo mismo que antes de
B. AA será una nueva colección, mientras que BB creará una nueva copia de BB para la operación de filtro
C. AA será una nueva colección, mientras que la operación del filtro creará una nueva copia mutable de BB
D. AA será una nueva colección mutable, mientras que BB seguirá siendo lo mismo que antes
¿Cuál de los siguientes es falso para Scala?
A. Scala es un lenguaje puro orientado a objetos
B. Scala admite clases genéricas
C. Scala admite funciones de orden superior
D. Scala es puro funcional
Elija la declaración que mejor describa la función de scala 'aplicar'?
A. Cuando le da parámetros directamente a un objeto, entonces pasa estos parámetros a la función Aplicar de ese objeto
B. La función de aplicación se define explícitamente en los objetos de clase de caso
C. La función de aplicación es un constructor auxiliar
D. Cuando construye un objeto con parámetros, usted pasa parámetros implícitamente a la función de aplicación de ese objeto
Para el fragmento de código a continuación, elija la expresión que muestra la salida correcta?
Object Main extiende la aplicación {val adder = new Adder (2) System.out.println (Adder.apply (4))} Class Adder (x: int) {var y = 5 definir (y (y : Int) = x + y}
A. 9
B. Error de compilación
C. 6
D. Ninguno
Lea el siguiente código y diga cuándo se ejecutan las funciones de Scala?
A. scala> def showsame () = println ("Esta es una cadena") Showeame: () Unit Scala> Showename esta es una cadena Scala> Showeame _ Res1: () => unit = <funional0>
B. Scala> Res1 Res2: () => unit = <funte0> scala> res1 () Esta es una cadena scala> def showsame (s: string) = println ("Esta es una cadena") Showeame: (S: String) Unidad Scala>
C. Showeame <ScoSol>: 9: Error: Falta de argumentos para el método Showeame; Siga este método con `_ 'si desea tratarlo como un nombre de función de función parcialmente aplicada
D. Todo lo anterior
Elija la declaración que no sea correcta para el rasgo traversable?
A. Su única operación abstracta es def foreach [u] (f: elem => u)
B. Los objetos traversibles pueden ser finitos o infinitos
C. Todas las colecciones se extienden traversible
D. Los objetos traversibles no pueden ser infinitos
Usando el siguiente fragmento de código, elija la declaración correcta que resuelve el error?
Clase A (n: int) {var value = n} clase B (n: int) {val value = new A (n)} Test de objeto {class A (n: int) {Val Value = n} clase b (n: int) {val value = new a (n)} objeto principal extiende la aplicación {val x = new b (5) x.value = 6} Cuando se cumple produce el siguiente error main.scala: 7 : Error: reasignación a val x.value = 6 ^
A. X.Value.Value = 6
B. X.Value = A (6)
C. X.Value = nuevo A (6)
D. X.Value.Value = nuevo A (6)
String Interpolation permite a los usuarios _____ referencias variables directamente en literales de cadena procesados?
A. Incrustado
B. Global
C. Constante
D. Estático
¿Cuál es la mejor manera de "clonar" una clase de casos?
A. Specifly llame a todos los campos y use el constructor
B. Specifly llame a todos los campos y use la función Aplicar
C. Use el método de copia
D. Use el objeto de comapnion
Para el código a continuación, elija la declaración correcta que describe el código?
El objeto A se extiende B con C {def f (x: any): any = ??? }
A. Declara una clase anónima que se extiende tanto B como C
B. Define la clase B y crea todos los métodos en el objeto B como métodos estáticos en la clase B
C. Si una clase llamada C se define explícitamente, A será un objeto complementario a C
D. Declara una clase de acompañante
Scala proporciona __ versiones de todos sus tipos de colección. Estas versiones no se pueden cambiar después de que se inicialicen. ¿Debe usarlos cuando sepa que no se debe cambiar una colección, para que no la cambie accidentalmente más tarde?
A. inmutable
B. inicialización
C. conversión
D. liza
Puede convertir cualquier colección. a una matriz o una lista. Dicha conversión requiere copiar todos los elementos de la colección y, por lo tanto, es lento para grandes colecciones. Sin embargo, a veces debe hacerlo debido a una API existente. Además, muchas colecciones solo tienen unos pocos elementos de todos modos, en cuyo caso solo hay una pequeña penalización de velocidad?
A. Conversión
B. Liza
C. Arraybuffers
D. Formación
Si SEQ es un rasgo, ¿por qué VAR x = seq (1, 2, 3) legal?
A. SEQ es una implementación
B. Seq no es un rasgo, es un objeto
C. Seq no es un rasgo es una colección
D. Está llamando al método de aplicación en el objeto
Elija la siguiente declaración que no sea correcta para las colecciones paralelas?
A. Puede reemplazar una colección no paralela con una paralela
B. Cualquier colección puede convertirse en una paralela llamando al método par en él
C. Llamar a Toseq en una colección paralela devolverá una colección en serie.
D. La jerarquía de colecciones paralelas tiene los mismos nombres para los rasgos, pero precedido a la par
Para el siguiente código, elija la declaración correcta que muestra la salida?
var l1 = scala.collection.mutable.mutableList [string] () val l2 = list [string] () para (a <-- 1 a 100) {L1 += A.ToString} println (l1 .size); para (a <- 1 a 100) {L2:+ A.ToString} println (l2 .size);
A. 100 el 100
B. 0 entonces 100
C. 100 entonces 0
D. 0 entonces 0
Elige la declaración que no es correcta usando el código a continuación?
(1 a 10). PAR MAP Pintln
A. Si agrega par, obtendrá una colección y operaciones paralelas siempre se procesarán en paralelo.
B. Si agrega par, obtendrá una colección paralela y las operaciones en ella siempre se procesarán en paralelo solo si más de un subproceso del sistema es ADAIABLE
C. Divide su lista para procesar en varios hilos
D. Como el par está actuando en un rango, copia los elementos en una perra.
¿Cuál es la salida del siguiente código?
Object MatchTest {def matchTest (x: any): any = x coincidente {caso 1 => "un" caso "dos" => 2 Case Y: int => "Scala.int"} Def Main (args: array [string]) {println (matchtest (2))}}
A. Error de compilación
B. Error de tiempo de ejecución
C. Scala.int
D. 2
¿Cuál es la salida del código dado a continuación?
Def addint (a: int = 5, b: int = 7): int = a + b print (addint (3,7), addInt (3), addInt (), addInt (b = 5))
A. 10,10,12,10
B. Error de compilación
C. 10, 10, 12, 12
D. 12,12,12,12
Para el código a continuación, elija la declaración correcta que describe un problema con el código?
val l = list [string] () para (a <- 1 a 100) {L:+ A.ToString}
A. L es una lista mutable
B. "L:+ A.ToString" está devolviendo una nueva lista cada vez
C. "L:+ A.ToString" produce una comprensión
D. para (a <- 1 a 100) {L:+ A.ToString} es equivalente a (1 a 100) .map (_. Tostring)
¿Cuál es la salida del siguiente código?
def main (args: array [string]) {val x = {print ("x"); 1} Lazy val y = {print ("y"); 2} def z = {imprime ("Z"); 3} Z+Y+X+Z+Y+X}
A. zyxzyx
B. xyzz
C. zyzz
D. xzyz
¿Cómo agruparse usando múltiples columnas en colecciones de Scala?
A. Records.groupby (Record => (Record.Column1, Record.Column2, Record.Column3))
B. registro.setgroup (registro => (registro.column1, registro.column2, registro.column3))
C. Records.groupSet (Record => (Record.Column1, Record.Column2, Record.Column3))
D. Todo lo anterior
Elige la salida correcta usando el fragmento de código a continuación?
listofints.sliding (2) .tolist
A. Lista (1, 2), Lista (2, 3)
B. Lista (1), Lista (2), Lista (3)
C. Lista (Lista (1), Lista (2), Lista (3))
D. Lista (Lista (1, 2), Lista (2, 3))
Elija la declaración que no sea correcta para el Mutable.map?
de Scala.A. mutable.map es un iterable de tuple2
B. mutable.map tiene un método de actualización para configurar las claves
C. mutable.map tiene un método withdefaultValue que devuelve un valor predeterminado para las claves
D. mutable.map tiene un método withdefaultValue que devuelve un valor predeterminado para claves indefinidas