Как реализовать универсальную математическую функцию в Scala

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

def square (x: Int): Int = {x * x}

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

def square [T <: Number] (x: T): T = {x * x }

В нем сообщается: ошибка: значение * не является членом параметра типа T

Нужно ли мне реализовать для этого признак?

29
задан Julie 18 June 2015 в 04:21
поделиться