Вопросы по теме 'scala-collections'

Преобразовать набор Scala в Java (java.util.Set)?
У меня есть Set в Scala (я могу выбрать любую реализацию, когда создаю Set. Библиотека Java, которую я использую, ожидает java.util.Set [String]. Это правильный способ сделать это в Scala (используя scala.collection.jcl.HashSet # в основе):...
13796 просмотров

лучшая идиома Scala для поиска и возврата
Я часто сталкиваюсь с этим, но не знаю, как это элегантно делать. У меня есть коллекция объектов Foo. Foo имеет метод bar (), который может возвращать null или объект Bar. Я хочу просканировать коллекцию, вызвать метод bar () каждого объекта и...
883 просмотров
schedule 31.12.2022

Могу ли я улучшить свою библиотеку с помощью аналога TraversableLike.map, который имеет красивые варианты типов?
Предположим, я хочу добавить в Scala List такую ​​функциональность, как map , что-то вроде list mapmap f , которая дважды применяет функцию f к каждому элементу list . (Более серьезным примером может быть реализация параллельной или...
718 просмотров

Scala для понимания, возвращающий упорядоченную карту
Как я могу использовать for-comprehension, который возвращает что-то, что я могу присвоить упорядоченной карте? Это упрощение кода, который у меня есть: class Bar class Foo(val name: String, val bar: Bar) val myList: java.util.List[Foo] = ... val...
3910 просмотров
schedule 25.08.2022

Scala: самое быстрое удаление (i: Int) в изменяемой последовательности
Какую реализацию из пакета scala.collection.mutable следует выбрать, если я намерен выполнять большое количество удалений по индексу, например remove(i: Int) , в однопоточной среде? Самый очевидный выбор, ListBuffer , говорит, что это может...
4521 просмотров
schedule 22.12.2022

Итератор Scala с картой и для
Данный: val list = List("one","two","three") val it = list.toIterator Я могу бегать: list map ("_" +) -> List(_one, _two, _three) for (i <- list) yield("_" + i) -> List(_one, _two, _three) Если я запускаю то же самое на...
15995 просмотров

Вопрос производительности Scala
В статье, написанной Даниэлем Корзеква , он сказал, что производительность следующего кода: list.map(e => e*2).filter(e => e>10) намного хуже, чем итеративное решение, написанное на Java. Кто-нибудь может объяснить, почему? И...
1956 просмотров
schedule 10.12.2022

Общая работа с коллекциями Scala
Я написал функцию для поиска самой длинной общей подпоследовательности (LCS). Например, для двух последовательностей символов BANANA и ATANA он возвращает AANA. Реализация является наивной неэффективной адаптацией рекурсивного алгоритма, но не...
1495 просмотров

Варианты использования форвардеров и прокси-серверов Scala
Библиотека коллекций Scala содержит серверы пересылки IterableForwarder , TraversableForwarder , SeqForwarder и прокси, такие как IterableProxy , MapProxy , SeqProxy , SetProxy , TraversableProxy и т. д. методы действия...
567 просмотров
schedule 02.04.2023

Как преобразовать массив [строка] в набор [строка]?
У меня есть массив строк. Каков наилучший способ превратить его в неизменяемый набор строк? Я предполагаю, что это вызов одного метода, но я не могу найти его в документах scala. Я использую Скала 2.8.1.
36907 просмотров
schedule 12.12.2023

Как реализовать Map с операцией по умолчанию в Scala
class DefaultListMap[A, B <: List[B]] extends HashMap[A, B] { override def default(key: A) = List[B]() } Я не хочу создавать карту A -> List[B] . В моем случае это Long -> List[String] , но когда я получаю ключ от карты,...
32315 просмотров
schedule 04.06.2023

Итерация по списку в оболочке Scala
Мне нужно инкапсулировать список в отдельный объект в Scala, выступающий в качестве класса-оболочки для моей коллекции. Мне это нужно, чтобы реализовать некоторые методы для работы со списком (подробнее мне нужно найти объекты в списке, которые...
388 просмотров

Добавление неизменяемых векторов
Я пытаюсь больше работать с неизменяемой коллекцией scalas, так как ее легко распараллелить, но я борюсь с некоторыми проблемами новичков. Я ищу способ создать (эффективно) новый вектор из операции. Чтобы быть точным, я хочу что-то вроде val v :...
2584 просмотров
schedule 06.09.2022

Автоматическое преобразование между коллекциями scala и java при использовании scala.collection.JavaConversions._ в scala 2.8
У меня есть Java API, который возвращает этот тип: ArrayList[ArrayList[String]] = Foo.someJavaMethod() В программе scala мне нужно отправить указанный выше тип в качестве параметра в функцию scala «bar», тип которой def bar(param:...
1807 просмотров

Устранение неожиданного отсутствия ParList в scala.collections.parallel
Итак, scala 2.9 недавно появился в тестировании Debian, принеся с собой новомодные параллельные коллекции. Предположим, у меня есть код, эквивалентный def expensiveFunction(x:Int):Int = {...} def process(s:List[Int]):List[Int} =...
831 просмотров

Как сгруппировать повторяющуюся последовательность переменной длины в Scala
У меня есть набор целых чисел, которые повторяются в шаблоне: val repeatingSequence = List(1,2,3,1,2,3,4,1,2,1,2,3,4,5) Я хотел бы разделить этот список, когда шаблон повторяется; в этом случае, когда последовательность возвращается к 1:...
1025 просмотров
schedule 24.02.2023

Пополнение коллекций Scala с помощью метода
Как добавить метод foreachWithIndex в коллекции Scala? Это то, что я мог придумать до сих пор: implicit def iforeach[A, CC <: TraversableLike[A, CC]](coll: CC) = new { def foreachWithIndex[B](f: (A, Int) => B): Unit = { var i = 0...
335 просмотров

Когда мне следует выбирать вектор в Scala?
Похоже, Vector опоздал на вечеринку по коллекционированию Scala, и все влиятельные сообщения в блоге уже ушли. В Java ArrayList - это коллекция по умолчанию - я мог бы использовать LinkedList , но только тогда, когда я продумал алгоритм и...
58704 просмотров
schedule 02.08.2023

Scala: удобная привязка параметров типа коллекции
Для удобства, ясности и абстракции я хочу придумать другое имя для конкретной привязки параметризованного трейта коллекции. Например, сначала рассмотрим: import collection.mutable.Map // NB: Map is a trait val m1 = Map[String, Int]() // uses...
161 просмотров
schedule 02.09.2022

Почему изменяемые и неизменяемые ListMaps имеют разный порядок в Scala?
Почему неизменяемая версия ListMap хранится в порядке возрастания, а изменяемая версия — в порядке убывания? Вот тест, который вы можете использовать, если у вас есть scalatest-1.6.1.jar и junit-4.9.jar. @Test def StackoverflowQuestion() {...
2610 просмотров
schedule 26.11.2023