Запитання з тегом «scala-collections»

Бібліотека колекцій для мови програмування Scala

18
Чи є бібліотекою колекцій Scala 2.8 «найдовший запис про самогубство в історії»? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

4
Перерва Scala 2.8
У Scala 2.8 є об'єкт у scala.collection.package.scala: def breakOut[From, T, To](implicit b : CanBuildFrom[Nothing, T, To]) = new CanBuildFrom[From, T, To] { def apply(from: From) = b.apply() ; def apply() = b.apply() } Мені сказали, що це призводить до: > import scala.collection.breakOut > val map : Map[Int,String] = List("London", "Paris").map(x …

6
Коли я повинен вибрати вектор у Scala?
Здається, Vectorзапізнилося на вечірку колекцій Scala, і всі впливові дописи в блозі вже вийшли. У Java ArrayList- колекція за замовчуванням - я можу використовувати, LinkedListале лише тоді, коли я продумав алгоритм і достатньо дбаю, щоб оптимізувати. Чи слід використовувати Scala Vectorяк замовчування Seqчи намагаюся розібратися, коли Listнасправді більше?



13
Найкращий спосіб Scala перетворити колекцію на карту за ключем?
Якщо у мене є колекція cтипу Tі є властивість pна T(типу P, скажімо), що це кращий спосіб , щоб зробити карту-на-екстрагента-ключ ? val c: Collection[T] val m: Map[P, T] Один із способів: m = new HashMap[P, T] c foreach { t => m add (t.getP, t) } Але зараз мені …

3
Різниця між масивом та списком у масштабі
У яких випадках я повинен використовувати масив (буфер) та список (буфер). Я знаю лише одну відмінність, що масиви є неваріантними, а списки - коваріантними. А як щодо продуктивності та деяких інших характеристик?

1
Потік проти Погляди проти Ітераторів
Які відмінності між потоками, переглядами (SeqView) та ітераторами в масштабі? Це моє розуміння: Вони всі ліниві списки. Потоки кешують значення. Ітератори можна використовувати лише один раз? Ви не можете повернутися до початку та знову оцінити значення? Значення перегляду не кешовані, але ви можете оцінювати їх знову і знову? Отже, якщо …

6
Як читати файли з папки ресурсів у Scala?
У мене структура папки, як показано нижче: - main -- java -- resources -- scalaresources --- commandFiles і в цих папках у мене є свої файли, які я маю прочитати. Ось код: def readData(runtype: String, snmphost: String, comstring: String, specificType: String): Unit = { val realOrInvFile = "/commandFiles/snmpcmds." +runtype.trim // …


10
Елегантний спосіб перевернути карту в Скалі
Навчання Scala в даний час і потрібно, щоб перетворити карту, щоб зробити кілька перевернутих значень-> пошук ключів. Я шукав простий спосіб зробити це, але придумав лише: (Map() ++ origMap.map(kvp=>(kvp._2->kvp._1))) Хтось має більш елегантний підхід?

3
Який правильний спосіб отримати підрив у Scala?
Я намагаюся отримати підрядок в масштабі, і я трохи розгублений у тому, що це правильний спосіб. Мені б найбільше хотілося б щось подібне, як це можна зробити в python: x = [3, 2, 1] x[0:2] але я впевнений, що ви не можете цього зробити. Найбільш очевидний спосіб зробити це - …

3
Чому незмінний набір Scala не є коваріантним за своїм типом?
РЕДАГУВАТИ : Переписати це питання на основі оригінальної відповіді scala.collection.immutable.SetКласу не коваріантен в параметрі типу. Чому це? import scala.collection.immutable._ def foo(s: Set[CharSequence]): Unit = { println(s) } def bar(): Unit = { val s: Set[String] = Set("Hello", "World"); foo(s); //DOES NOT COMPILE, regardless of whether type is declared //explicitly in …

10
Перетворення колекції Java у колекцію Scala
Пов’язане із запитанням про переповнення стека Scala, еквівалент нового HashSet (Collection) , як перетворити колекцію Java ( java.util.Listскажімо) у колекцію Scala List? Я насправді намагаюся перетворити виклик API Java на Spring SimpleJdbcTemplate , який повертає a java.util.List<T>, у незмінну Scala HashSet. Так наприклад: val l: java.util.List[String] = javaApi.query( ... ) …

3
Що означає param: _ * у Scala?
Будучи новим у Scala (2.9.1), я маю a List[Event]і хотів би скопіювати його в a Queue[Event], але Queue[List[Event]]натомість такий синтаксис дає a : val eventQueue = Queue(events) З якихось причин працюють наступні: val eventQueue = Queue(events : _*) Але я хотів би зрозуміти, що це робить, і чому це працює? …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.