The method headwill return the first element of the list, but take(n)will return to the nelements from the beginning of the list. So after you shuffled the list, just use take:
def takeRandomN[A](n: Int, as: List[A]) =
scala.util.Random.shuffle(as).take(n)
as n as.
, , , , , , . Array , List .