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

Преобразование коллекции Java в коллекцию Scala
В связи с вопросом о переполнении стека Scala-эквивалент нового HashSet (Collection) , как преобразовать коллекцию Java ( java.util.List скажем) в коллекцию Scala List ? На самом деле я пытаюсь преобразовать вызов Java API в Spring...
78994 просмотров
schedule 11.05.2023

Тип коллекции Scala для фильтра
Предположим, что у вас есть List(1,"1"), он имеет тип List[Any], что, конечно, правильно и ожидаемо. Теперь, если я сопоставлю список таким образом scala> List(1, "1") map { | case x: Int => x | case y: String => y.toInt...
3682 просмотров
schedule 11.12.2022

Неявное преобразование коллекций Java в Scala 2.8
У меня проблема с JavaConversions с бета-версией 2.8: import scala.collection.JavaConversions._ class Utils(dbFile : File, sep: String) extends IUtils { (...) def getFeatures() : java.util.List[String] = csv.attributes.toList } А...
916 просмотров

Могу ли я создать коллекцию в Scala, которая использует разные реализации equals/hashCode/compare?
Я ищу как простой способ создать набор идентификаторов. Я просто хочу иметь возможность отслеживать, «видел» ли я конкретный объект при обходе графика. Я не могу использовать обычный Set, потому что Set использует "==" (метод equals в Scala) для...
2198 просмотров
schedule 22.04.2022

Неизменяемая карта Scala MultiMap
В Scala я хотел бы написать val petMap = ImmutableMultiMap(Alice->Cat, Bob->Dog, Alice->Hamster) Базовая карта [Owner, Set [Pet]] должна иметь как Map, так и Set неизменными. Вот первый черновик ImmutibleMultiMap с сопутствующим...
3162 просмотров

Scala: Почему Seq.contains принимает аргумент Any, а не аргумент типа последовательности?
Так, например, почему List(1,2,3,4).contains("wtf") даже компилируется? Было бы неплохо, если бы компилятор это отклонил?
5887 просмотров
schedule 12.11.2022

идиоматическое получение или еще обновление для immutable.Map?
Каков идиоматический способ getOrElseUpdate для экземпляров immutable.Map ?. Я использую приведенный ниже фрагмент, но он кажется подробным и неэффективным. var map = Map[Key, Value]() def foo(key: Key) = { val value = map.getOrElse(key, new...
14467 просмотров
schedule 06.07.2023

создать карту из scala.xml.NodeSeq
У меня есть следующий xml-узел: val xml = <fields><field name="one"></field><field name="two"></field></fields> Теперь я хотел бы создать карту [String, Node] с именем поля в качестве ключа. for{x <-...
2701 просмотров
schedule 11.02.2023

Расширение коллекций Scala
Я хотел бы получить версию встроенной коллекции Scala, которая расширяет функциональность для определенного универсального типа, например, import scala.collection.immutable._ class Tuple2Set[T1,T2] extends HashSet[Tuple2[T1,T2]] { def left = map...
1893 просмотров
schedule 15.04.2023

Поток против просмотров против итераторов
В чем разница между потоками, представлениями (SeqView) и итераторами в scala? Это мое понимание: Это все ленивые списки. Потоки кэшируют значения. Итераторы можно использовать только один раз? Вы не можете вернуться к началу и снова...
22121 просмотров
schedule 03.12.2022

Как назначить порядок для TreeSet в Scala, не повторяясь
У меня есть этот сегмент кода Scala, который определяет порядок и применяет его к TreeSet. Эта часть компилируется нормально. val acctOrdering = new Ordering[Account] { def compare(acc1: Account, acc2: Account) { // code to compare based...
3246 просмотров

Как создать подкласс Scala immutable.Map с параметрами фиксированного типа?
Я не могу понять, как справиться с переопределением «+» в неизменяемой карте, если карта может хранить только инвариантный тип для своих значений. Что-то типа: class FixedMap(val impl : Map[String, Int]) extends immutable.Map[String, Int]...
1995 просмотров
schedule 28.03.2024

Карта‹Строка, Список‹? расширяет T›› в Scala
В моем случае использования у меня есть класс с ковариантным типом Foo[+T] и классы A ‹: T, B ‹: T, C ‹: T, мне нужно сохранить карту «A» -> экземпляр Foo[A] , "B" -> экземпляр Foo[B] и "C" -> экземпляр Foo[C], возможно ли это в scala? В настоящее...
1311 просмотров
schedule 21.09.2022

Почему в коллекциях scala нет удобочитаемых методов, таких как .append, .push и т. д.
В коллекциях Scala есть куча удобочитаемых и почти удобочитаемых операторов, таких как :+ и +: , но почему нет удобочитаемых синонимов, таких как append ?
371 просмотров
schedule 14.02.2023

Что означает param: _ * в Scala?
Поскольку я новичок в Scala (2.9.1), у меня есть List[Event] , и я хотел бы скопировать его в Queue[Event] , но следующий синтаксис вместо этого дает Queue[List[Event]] : val eventQueue = Queue(events) Почему-то работает следующее: val...
36942 просмотров
schedule 30.12.2023

изменяемые и неизменяемые в коллекциях Scala
Я новичок в Scala и пытаюсь понять иерархию коллекций. Я вижу различие между «изменяемыми» и «неизменяемыми» коллекциями, но я не понимаю, что это на самом деле означает на уровне реализации и как это относится к val и var . Может ли кто-нибудь...
17167 просмотров

Почему комбинации методов возвращают Iterator, а не Stream в Scala?
Я заметил этот метод combinations (из здесь ) возвращает Iterator . Кажется разумным, что метод должен быть ленивым, чтобы избежать генерирования всех комбинаций заранее. Теперь мне интересно, почему он возвращает Iterator вместо Stream...
1743 просмотров

Карта Scala foreach
дано: val m = Map[String, Int]("a" -> 1, "b" -> 2, "c" -> 3) m.foreach((key: String, value: Int) => println(">>> key=" + key + ", value=" + value)) почему компилятор жалуется error: type mismatch found : (String,...
67127 просмотров
schedule 07.09.2022

Более чистая группа кортежейОт
У меня есть последовательность пар ключ-значение (String, Int), и я хочу сгруппировать их по ключу в последовательность значений (т.е. Seq[(String, Int)]) => Map[String, Iterable[Int]]) ). Очевидно, что toMap здесь бесполезна, а groupBy...
11152 просмотров
schedule 18.11.2022

Введите псевдоним для неизменяемых коллекций
Как лучше всего устранить ошибку компиляции в приведенном ниже примере? Предположим, что 'm' должен иметь тип GenMap, и я не могу управлять аргументами myFun. import scala.collection.GenMap object Test { def myFun(m: Map[Int, String]) = m...
189 просмотров
schedule 21.04.2022