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

4
Dziedziczenie klas przypadków w skali Scala
Mam aplikację opartą na Squeryl. Moje modele definiuję jako klasy przypadków, głównie dlatego, że uważam za wygodne metody kopiowania. Mam dwa modele, które są ze sobą ściśle powiązane. Pola są takie same, wiele operacji jest wspólnych i mają być przechowywane w tej samej tabeli DB. Ale jest pewne zachowanie, które …

10
Konwertowanie kolekcji Java na kolekcję Scala
Powiązane z pytaniem o przepełnienie stosu Scala odpowiednik nowego zestawu HashSet (kolekcja) , jak przekonwertować kolekcję Java ( java.util.Listpowiedzmy) na kolekcję Scala List? W rzeczywistości próbuję przekonwertować wywołanie Java API na Springa SimpleJdbcTemplate , które zwraca java.util.List<T>, na niezmienny Scala HashSet. Na przykład: val l: java.util.List[String] = javaApi.query( ... ) …

5
Kiedy są przydatne typy wyższego rodzaju?
Od jakiegoś czasu zajmuję się programowaniem w języku F # i podoba mi się to. Jednak jedno słowo, które wiem, że nie istnieje w F #, to typy wyższego rodzaju. Przeczytałem materiały o typach wyższego rzędu i myślę, że rozumiem ich definicję. Po prostu nie jestem pewien, dlaczego są przydatne. …



11
Przerwij wcześnie
Jaki jest najlepszy sposób na wcześniejsze zakończenie spasowania? Jako uproszczony przykład wyobraź sobie, że chcę zsumować liczby w an Iterable, ale jeśli napotkam coś, czego się nie spodziewam (powiedzmy nieparzystą liczbę), mogę chcieć zakończyć. To jest pierwsze przybliżenie def sumEvenNumbers(nums: Iterable[Int]): Option[Int] = { nums.foldLeft (Some(0): Option[Int]) { case (Some(s), …

13
Konwertować listę Scala na krotkę?
Jak przekonwertować listę zawierającą (powiedzmy) 3 elementy na krotkę o rozmiarze 3? Na przykład, powiedzmy, że mam val x = List(1, 2, 3)i chcę przekonwertować to na (1, 2, 3). Jak mogę to zrobić?
88 list  scala  tuples 

5
Mylony z przekształceniem dla zrozumienia w płaską mapę / mapę
Naprawdę nie rozumiem Map i FlatMap. To, czego nie rozumiem, to jak interpretacja jest sekwencją zagnieżdżonych wywołań map i flatMap. Poniższy przykład pochodzi z programowania funkcjonalnego w Scali def bothMatch(pat:String,pat2:String,s:String):Option[Boolean] = for { f <- mkMatcher(pat) g <- mkMatcher(pat2) } yield f(s) && g(s) przetłumaczyć na def bothMatch(pat:String,pat2:String,s:String):Option[Boolean] = mkMatcher(pat) …




3
Co oznacza param: _ * w Scali?
Będąc nowym w Scali (2.9.1), mam a List[Event]i chciałbym go skopiować do a Queue[Event], ale następująca składnia daje Queue[List[Event]]zamiast tego a: val eventQueue = Queue(events) Z jakiegoś powodu działa: val eventQueue = Queue(events : _*) Ale chciałbym zrozumieć, co to robi i dlaczego działa? Spojrzałem już na podpis Queue.applyfunkcji: def …


6
Scala sprawdza, czy element znajduje się na liście
Muszę sprawdzić, czy na liście znajduje się ciąg, i wywołać funkcję, która odpowiednio akceptuje wartość logiczną. Czy można to osiągnąć za pomocą jednej wkładki? Poniższy kod jest najlepszym, jaki mogłem dostać: val strings = List("a", "b", "c") val myString = "a" strings.find(x=>x == myString) match { case Some(_) => myFunction(true) …
86 string  list  scala  find 


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.