/ / Jak mogę używać prymitywów w Scali? - łuskowiec, typy prymitywne

Jak korzystać z prymitywów w Scali? - scala, prymitywne typy

Czy mogę używać prymitywów w Scali?

Przypadek użycia służy do przechowywania miliardów liczb całkowitych, więc ważna jest różnica między 4 bajtami (dla liczby całkowitej) a 16 bajtami (dla liczby całkowitej).

Odpowiedzi:

14 dla odpowiedzi № 1

Jeśli chcesz, aby Scala przechowywała rozpakowane prymitywy, możesz użyć Array[Int] ale powstrzymaj się od używania na nim jakiejkolwiek fajnej metody zbierania Scali (ponieważ wymusi to boks).

Jeśli szukasz niezmiennych kolekcji typów pierwotnych, możesz rzucić okiem Debox, który zapewnia specjalistyczne bufory, zestawy i mapy. Projekt wciąż się rozwija, ale jest bardzo obiecujący.


12 dla odpowiedzi nr 2

Możesz użyć @specialised adnotacja, aby umożliwić kompilatorowi tworzenie wyspecjalizowanych instancji klasy za Ciebie. Widzieć Ten artykuł.

class Container[@specialized(Int) T](value: T) {
def apply(): T = value
}