3.5. Typ Unit

Typ Unit ma tylko jedną wartość, której literałem jest ().

scala> val o: Unit = ()
o: Unit = ()

Następująca metoda ma typ rezultatu Unit.

scala> def hello = println("Hello!")
hello: Unit

W poniższym przykładzie wartość innego typu została automatycznie przekształcona na wartość typu Unit (można przyjąć, że została pominięta), co jest dozwolone, choć przy okazji wygenerowane zostało ostrzeżenie.

scala> val p: Unit = 1
<console>:10: warning: a pure expression does nothing in statement position; you may be omitting necessary parentheses
       val p: Unit = 1
                     ^
p: Unit = ()

Specyfikacja języka Scala opisuje typ Unit w punkcie 12.2.3. Możliwość dokonywania konwersji na wartość () jest w specyfikacji opisana jako „Value Discarding” w punkcie 6.26.1.

Język programowania Scala Wydanie 2. Copyright © Grzegorz Balcerek 2016

Licencja Creative Commons

Ten utwór jest dostępny na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 4.0 Międzynarodowe.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.