Синтаксис типа Scala

Я заметил, что если я хочу создать универсальную функцию, которая может принимать список любого типа и возвращать логическое значение, я могу использовать следующий синтаксис для объявления функции:

def someFunction[A](l:List[A]):Boolean

Тем не менее, я могу добиться эквивалентного объявления функции с помощью этого синтаксиса:

def someFunction(l:List[_]):Boolean

Последний синтаксис имеет смысл для меня; символ подчеркивания указывает на подстановочный знак для списка любого типа. Однако первое сбивает с толку; Какова семантическая разница между двумя типами синтаксиса, если он вообще существует? Примечание: я заметил, что мог использовать [B] или [c] или даже [%] вместо «[A]» в первом примере синтаксиса.

Ответы на вопрос(2)

Ваш ответ на вопрос