Разница между any и comparable в Golang заключается в следующем:
- any — это псевдоним для interface{}, который может представлять любой тип. 4 Это ключевое слово можно использовать в любом месте, например при определении типа переменной или при определении типа поля в структуре. 1
- comparable — это предопределённый интерфейс для описания типов данных, поддерживающих сравнение с помощью операторов == и !=. 4 Примерами comparable типов являются bool, int, float, string и другие. 4
Таким образом, any допускает любые типы, а comparable — только те, которые могут быть сравнены, то есть для их значений можно использовать операторы == и !=. 5