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
Niezgodność typów w Scali do zrozumienia
Dlaczego ta konstrukcja powoduje błąd niezgodności typu w Scali? for (first <- Some(1); second <- List(1,2,3)) yield (first,second) <console>:6: error: type mismatch; found : List[(Int, Int)] required: Option[?] for (first <- Some(1); second <- List(1,2,3)) yield (first,second) Jeśli przełączę Some with the List, kompiluje się dobrze: for (first <- List(1,2,3); …


7
Jak posortować tablicę w Scali?
Widzę, że znajduje się na nim obiekt sortujący Sortingz metodą szybkiego sortowaniaquickSort . Jaki byłby przykład kodu użycia go, sortowania tablicy obiektów dowolnego typu? Wygląda na to, że muszę przekazać implementację Orderablecechy, ale nie jestem pewien składni. Wolałabym również odpowiedzi robiąc to w „sposób Scali”. Wiem, że mogę po prostu …
81 sorting  scala 


7
Jak zadeklarować pustą listę, a następnie dodać ciąg w scali?
Mam taki kod: val dm = List[String]() val dk = List[Map[String,Object]]() ..... dm.add("text") dk.add(Map("1" -> "ok")) ale generuje java.lang.UnsupportedOperationException środowiska wykonawczego. Muszę zadeklarować pustą listę lub puste mapy, a niektóre miejsca w kodzie muszą je wypełnić.
81 scala 


1
Dopasowywanie wzorców wielu typów Scala
Zastanawiam się, jak mogę użyć dopasowania wzorców wielu typów. Mam: abstract class MyAbstract case class MyFirst extends MyAbstract case class MySecond extends MyAbstract case class MyThird extends MyAbstract // shouldn't be matched and shouldn't call doSomething() val x: MyAbstract = MyFirst x match { case a: MyFirst => doSomething() case …



2
Scala classOf dla parametru typu
Próbuję utworzyć ogólną metodę aktualizacji obiektów za pomocą scala / java, ale nie mogę uzyskać klasy dla parametru typu. Oto mój kod: object WorkUnitController extends Controller { def updateObject[T](toUpdate: T, body: JsonObject){ val source = gson.fromJson(body, classOf[T]); ... } } Otrzymuję błąd wymagany typ klasy, ale znaleziono T. Wiem, że …
80 scala 

8
Jak zapobiec java.lang.OutOfMemoryError: PermGen space w kompilacji Scala?
Zauważyłem dziwne zachowanie mojego kompilatora Scala. Czasami podczas kompilowania klasy zgłasza OutOfMemoryError. Oto komunikat o błędzie: [info] Compiling 1 Scala source to /Users/gruetter/Workspaces/scala/helloscala/target/scala-2.9.0/test-classes... java.lang.OutOfMemoryError: PermGen space Error during sbt execution: java.lang.OutOfMemoryError: PermGen space Dzieje się to tylko raz na jakiś czas, a błąd zwykle nie jest zgłaszany przy kolejnym uruchomieniu …


4
Dlaczego zip jest szybszy niż zip w Scali?
Napisałem kod Scali, aby wykonać elementową operację na kolekcji. Tutaj zdefiniowałem dwie metody, które wykonują to samo zadanie. Jedna metoda wykorzystuje, zipa druga wykorzystuje zipped. def ES (arr :Array[Double], arr1 :Array[Double]) :Array[Double] = arr.zip(arr1).map(x => x._1 + x._2) def ES1(arr :Array[Double], arr1 :Array[Double]) :Array[Double] = (arr,arr1).zipped.map((x,y) => x + y) …



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.