Usted puede encontrar esto sí mismo por cualquier método mirando el Scaladoc y descubrir donde está definido, y luego mirando la fuente. Si comienza con online docs, puede hacer todo esto simplemente haciendo clic: vaya al método, ábralo haciendo clic en la flecha de la izquierda, y verá una lista de clases superiores. Ve al primero y mira la fuente.
De todos modos, en este caso, GenSeqLike
, un supertrait de List
y muchas otras colecciones, define equals
como un cheque canEqual
seguido de sameElements
. A su vez, sameElements
comprueba si ambos argumentos son LinearSeq
s, y si es así, las llamadas son iguales en cada par de elementos al dividir la cabeza y la cola una por una. De lo contrario, utiliza de manera predeterminada iteradores, llamando al hasNext
en cada uno y luego comparando los elementos con equals
.
Por lo tanto, larga historia corta: sí, llama igual en cada par de elementos (se detiene en cuanto encuentra una discrepancia).
¿Has mirado el código? Scala es de código abierto. –
¿Ha intentado ejecutarlo? –
@Tyler: Sí, pero no pude encontrar el código de código correcto, ya que List amplía muchas otras clases. –