Как вы объявляете псевдоним типа в конструкторе scala? - PullRequest
16 голосов
/ 21 марта 2012

Если у меня есть класс, который принимает кортеж в своем конструкторе среди других значений, таких как:

class Foo(a: Int, b: String, c: (Int, String)) 

Как использовать абстрактный тип для придания кортежу более описательного имени в упрощенном виде (без переноса его в новый класс):

class Foo(a: Int, b: String, c: Dave) 

Я не уверен, как ввести псевдоним типа в область (или, если это лучше всего сделать):

type Dave = (Int, String) 

Существует ли соглашение о том, где определять типы таким образом (или я должен определять классы дел и оборачивать все ...)?

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

Спасибо!

1 Ответ

10 голосов
/ 21 марта 2012

Вы можете использовать псевдоним типа:

scala> type MyTuple = Tuple2[Int,String]
defined type alias MyTuple

scala> val x = new MyTuple(1, "one")
x: (Int, String) = (1,one)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...