Вопросы по теме 'case-class'
Scala не будет соответствовать шаблону с java.lang.String и классом Case
Здравствуйте, уважаемые программисты на Scala.
Я работаю со Scala уже несколько месяцев, однако у меня есть проблема с некоторыми действительно базовыми вещами, я надеюсь, что вы поможете мне с этим.
case class PersonClass(name: String, age:...
12415 просмотров
schedule
27.11.2023
Сопоставление классов case в scala: ~(a,b) match{case a~b=›}
У меня есть класс дела
case class ~[a,b](_1:a, _2:b)
Когда я хочу сопоставить шаблоны
new ~("a", 25) match{
case "a" ~ 25 =>
}
Я могу использовать его таким образом, потому что "a" ~ 25 и ~("a", 25) эквивалентны. Но если я...
557 просмотров
schedule
26.10.2022
case класс и черты
Я хочу создать специальный калькулятор. Я думаю, что case class - хорошая идея для операций:
sealed class Expr
case class add(op1:Int, op2:Int) extends Expr
case class sub(op1:Int, op2:Int) extends Expr
case class mul(op1:Int, op2:Int) extends...
5809 просмотров
schedule
29.12.2022
Проблема с параметризованным классом случая ограниченного типа и аргументами по умолчанию в Scala
Рассмотрим следующее (проверено на Scala 2.8.1 и 2.9.0):
trait Animal
class Dog extends Animal
case class AnimalsList[A <: Animal](list:List[A] = List())
case class AnimalsMap[A <: Animal](map:Map[String,A] = Map())
val dogList =...
7332 просмотров
schedule
07.08.2022
Разница между самодельным экстрактором и экстрактором корпусного класса
Согласно спецификации scala, экстрактор, созданный классами case, выглядит следующим образом (спецификация scala §5.3.2):
def unapply[tps](x: c[tps]) =
if (x eq null) scala.None
else scala.Some(x.xs11, ..., x.xs1k)
По причинам реализации...
531 просмотров
schedule
14.10.2022
Классы case, сопоставление с образцом и каррированные конструкторы в Scala
Кажется, они не очень хорошо сочетаются:
abstract class A
case class B (var a: Int)(var b: String) extends A
case class C extends A
Не будет работать следующее:
B(1)("1") match {
case B(a)(b) => print("B")
case C() =>...
3722 просмотров
schedule
23.02.2024
Конфликт имени параметра класса дочернего случая Scala с именем параметра родительского класса случая
Предположим, у нас есть два следующих класса:
abstract case class MyParent(param: Int) {
// ...
}
case class MyChild(param: Int) extends MyParent(param: Int) {
// ... ^^^^^ ^^^^^
}
Создание обоих классов...
761 просмотров
schedule
06.05.2023
Класс случая и линеаризация признаков
Предположим, что я хочу написать класс case Stepper следующим образом:
case class Stepper(step: Int) {def apply(x: Int) = x + step}
Он поставляется с хорошей toString реализацией:
scala> Stepper(42).toString
res0: String =...
398 просмотров
schedule
13.07.2023
Scala: есть ли у родительского класса способ доступа к методам, определенным только дочерними элементами?
У меня есть два класса case, которые наследуются от абстрактного базового класса. Я хочу определить некоторые методы абстрактного базового класса, которые используют методы копирования наследующих классов case (и, таким образом, возвращают экземпляр...
1871 просмотров
schedule
08.03.2022
По-видимому, ложная ошибка не принимает аргументы с конструктором класса case
У меня есть класс case с несколькими параметрами для его конструктора, и я определяю сопутствующий объект класса, который определяет альтернативный конструктор, который принимает другой набор аргументов, например:
case class MyClass (c: Char, mc:...
4011 просмотров
schedule
25.01.2023
Утверждение классов case в ScalaTest
Я вижу, что есть поддержка типа Option, но как насчет пользовательских классов case?
Я как бы хочу сделать это:
result match {
case SuccessCase(values) => {
values.foo should be ("bar")
}
case FailureCase => // should fail test,...
2851 просмотров
schedule
27.03.2024
Сопоставление шаблонов печати утки Scala
У меня есть класс case, подобный следующему:
// parent class
sealed abstract class Exp()
// the case classes I want to match have compatible constructors
case class A (a : Exp, b : Exp) extends Exp
case class B (a : Exp, b : Exp) extends Exp
case...
591 просмотров
schedule
24.06.2023
Получение частичных конструкторов для case-классов бесплатно
Рассмотрим абстрактный класс, определяющий два свойства
abstract class A {
def a: Int
def b: Int
// real A has additional members
}
который является базовым классом для различных классов случаев, таких как
case class Foo(a: Int, b:...
3776 просмотров
schedule
12.05.2022
построить класс case из набора параметров
Дано:
case class Thing(a:Int, b:String, c:Double)
val v = Vector(1, "str", 7.3)
Я хочу что-то, что будет волшебным образом создавать:
Thing(1, "str", 7.3)
Существует ли такая вещь (для Вещей произвольного размера)?
355 просмотров
schedule
24.10.2022
Как я могу использовать конструкторы перегруженных классов case и при этом использовать сопоставление с образцом?
Я пытался изучить сопоставление с образцом, когда нашел этот пример. Похоже, что сопоставление шаблонов классов case не работает с перегруженными конструкторами классов case.
case class MyClass(var first:String, var last:String){
def this(first:...
1795 просмотров
schedule
19.03.2022
кейс-класс scala с casbah. Принять параметр objectid как строку или как objectid
Я новичок в scala и не занимался программированием на Java или объектно-ориентированных языках программирования.
Я использую этот класс case для записи в базу данных
case class User(id: new ObjectId, name: String)
Каков наилучший способ...
586 просмотров
schedule
26.05.2023
Какой самый простой способ красиво напечатать класс case Scala в JSON в Play Framework 2.1.x?
У меня есть класс case, например
case class Person(firstName: String, lastName: String)
Я хотел бы красиво распечатать его как JSON. Я работаю в Play Framework 2.1.x. У меня также есть библиотека Salat в моем пути к классам, так что я тоже...
7192 просмотров
schedule
18.08.2022
Scala применить правила неприменения
Мне интересно, есть ли в Scala правило или, скорее, «лучшая практика» для переопределенного применения/отмены. Меня особенно интересует, хорошо ли иметь следующее свойство:
Для данного класса случаев C(x: T) для всех x Some(x) ==...
597 просмотров
schedule
26.06.2023
Как разобрать этот симпатичный BSON в Scala?
В нашем проекте мы используем Scala и Reactivemongo. (Я очень новичок в обоих) Когда вы печатаете на консоли "симпатичный" Bson, это выглядит так:
{ _id: BSONObjectID("52b006fe0100000100d47242"),
desc:...
2539 просмотров
schedule
08.09.2022
Факторинг атрибутов класса case, как-то обойти ограничения на расширение класса case?
Я хотел бы учесть некоторые общие атрибуты моих классов case, например идентификатор и отметку времени, чтобы написать общий код. Следующее работает нормально, но мне нужно повторить все атрибуты для каждого класса case:
trait HasIdAndTimestamp...
619 просмотров
schedule
02.03.2023