Pytania otagowane jako scala

Scala jest językiem programowania ogólnego przeznaczenia, którego głównym celem jest wirtualna maszyna Java. Zaprojektowany do wyrażania typowych wzorców programowania w zwięzły, elegancki i bezpieczny sposób, łączy w sobie imperatywny i funkcjonalny styl programowania. Jego kluczowe cechy to: zaawansowany statyczny system typów z wnioskowaniem typu; typy funkcji; dopasowywanie wzorów; niejawne parametry i konwersje; przeciążenie operatora; pełna interoperacyjność z Javą; konkurencja

1
Jakie ograniczenia nakłada Scala na „dopuszczalną złożoność” wywnioskowanych typów?
Zgodnie ze specyfikacją języka Scala : ... wnioskowanie o typie lokalnym jest dozwolone w celu ograniczenia złożoności wywnioskowanych granic [parametrów typu]. Minimalność i maksymalność typów należy rozumieć w odniesieniu do zbioru typów o dopuszczalnej złożoności. W praktyce jakie są ograniczenia? Ponadto, czy istnieją inne ograniczenia, które mają zastosowanie do wywnioskowanych …


5
Podziel listę na wiele list ze stałą liczbą elementów
Jak podzielić listę elementów na listy zawierające maksymalnie N elementów? przykład: mając listę z 7 elementami, utwórz grupy po 4, pozostawiając ostatnią grupę możliwie z mniejszą liczbą elementów. split(List(1,2,3,4,5,6,"seven"),4) => List(List(1,2,3,4), List(5,6,"seven"))
119 list  scala  split 


12
Jak profilować metody w Scali?
Jaki jest standardowy sposób profilowania wywołań metod Scala? To, czego potrzebuję, to haczyki wokół metody, za pomocą których mogę uruchamiać i zatrzymywać Timery. W Javie używam programowania aspektowego, aspektuJ, do definiowania metod, które mają być profilowane i wstrzykiwania kodu bajtowego, aby osiągnąć to samo. Czy istnieje bardziej naturalny sposób w …

10
Preferowany sposób tworzenia listy Scala
Istnieje kilka sposobów tworzenia niezmiennej listy w Scali (zobacz poniższy przykładowy kod). Możesz użyć mutowalnego ListBuffera, stworzyć varlistę i zmodyfikować ją, użyć metody rekurencyjnej tail i prawdopodobnie innych, o których nie wiem. Instynktownie używam ListBuffer, ale nie mam ku temu dobrego powodu. Czy istnieje preferowana lub idiomatyczna metoda tworzenia listy, …
117 scala 

6
Scala: List [Future] to Future [List] pomijając nieudane futures
Szukam sposobu na przekonwertowanie dowolnej długości listy kontraktów futures na przyszłość listy. Używam Playframework, więc ostatecznie naprawdę chcę Future[Result], ale żeby wszystko było prostsze, powiedzmy, że Future[List[Int]]Normalnym sposobem byłoby użycie, Future.sequence(...)ale jest pewien zwrot akcji ... Lista, którą otrzymuję, zwykle ma około 10-20 kontraktów futures i nierzadko zdarza się, że …
116 scala  future 

6
Inicjalizacja tablicy w Scali
Jestem nowy w Scali, dopiero dzisiaj zacząłem się jej uczyć. Chciałbym wiedzieć, jak zainicjować tablicę w Scali. Przykładowy kod Java String[] arr = { "Hello", "World" }; Jaki jest odpowiednik powyższego kodu w Scali?


7
Scala w dół czy malejąca dla pętli?
W Scali często używasz iteratora, aby wykonać forpętlę w rosnącej kolejności, na przykład: for(i <- 1 to 10){ code } Jak byś to zrobił, żeby od 10 do 1? Myślę, że 10 to 1daje pusty iterator (jak zwykła matematyka zakresu)? Zrobiłem skrypt Scala, który rozwiązuje to, wywołując odwrócenie w iteratorze, …

9
Iterowanie po kolekcjach Java w Scali
Piszę trochę kodu Scala, który wykorzystuje API Apache POI . Chciałbym iterować po wierszach zawartych w tym, java.util.Iteratorktóre otrzymałem z klasy Sheet. Chciałbym użyć iteratora w for eachpętli stylów, więc próbowałem przekonwertować go na natywną kolekcję Scala, ale bez powodzenia. Przyjrzałem się klasom / cechom opakowania Scala, ale nie widzę, …

7
Jak analizować JSON w Scali przy użyciu standardowych klas Scala?
Używam kompilacji w klasie JSON w Scala 2,8 do analizowania kodu JSON. Nie chcę korzystać z Liftweb jednego lub innego ze względu na zminimalizowanie zależności. Sposób, w jaki to robię, wydaje się zbyt konieczny, czy jest lepszy sposób, aby to zrobić? import scala.util.parsing.json._ ... val json:Option[Any] = JSON.parseFull(jsonString) val map:Map[String,Any] …
113 json  scala 



1
Zrozumienie, dlaczego Zipper jest Comonad
To jest kontynuacja odpowiedzi na moje poprzednie pytanie. Załóżmy, że trzeba mapować każdy element a:Aod List[A]do b:Bz funkcji def f(a:A, leftNeighbors:List[A]): Bi generować List[B]. Oczywiście nie mogę po prostu zadzwonić mapna listę, ale mogę użyć suwaka listy . Zamek błyskawiczny to kursor do poruszania się po liście. Zapewnia dostęp do …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.