如果我有一个类在其构造函数中采用元组和其他值,例如:
class Foo(a: Int, b: String, c: (Int, String))
Run Code Online (Sandbox Code Playgroud)
如何使用抽象类型以轻量级方式为元组提供更具描述性的名称(不将其包装在新类中):
class Foo(a: Int, b: String, c: Dave)
Run Code Online (Sandbox Code Playgroud)
我不确定如何在范围内引入类型别名(或者如果这是最好的事情):
type Dave = (Int, String)
Run Code Online (Sandbox Code Playgroud)
是否存在以这种方式定义类型的约定(或者我应该定义案例类并包装所有内容......)?
我很欣赏它在很多情况下没有意义,但如果我真的只是在寻找一个更具描述性的名字,那么它有可能吗?
谢谢!
我已经通过了我从控制器传递的标题列表:
@titles:List[String]
Run Code Online (Sandbox Code Playgroud)
我想循环生成一些html标题,其中{mmm}出现在:
@titles.map { title =>
<h1>{title} {mmm}</h1>
}
Run Code Online (Sandbox Code Playgroud)
显然有一个问题,因为它会尝试找到一个名为mmm的变量.如何逃避括号?
或者是否有更惯用的方法来生成不涉及映射列表的HTML?这个很新!
我一直在尝试简单的 Monad Transformers,其中我对涉及M[F[A]]whereM和Fare monad 的理解。如果是不同的单子,我如何在 for comp 中一起制作M[F[A]]和工作?M[S[A]]S
例如:
val a: Future[List[Int]] = ...
val b: Future[Option[Int]] = ...
Run Code Online (Sandbox Code Playgroud)
a需要 aListT[Future, Int]和b需要 anOptionT[Future, Int]但这些不组成,我需要使用另一个变压器吗?这取决于我在 for comp 中使用它们的顺序吗?
我试图使用Anorm返回一个结果列表,使用一个返回一组id的匹配行的查询.例如.
select *
from example
where id in (1,2,3,4,5)
Run Code Online (Sandbox Code Playgroud)
如果我试试
SQL(
"""
select *
from example
where id in ({ids})
"""
).on('ids -> ids).as(int("id") ~ str("name") *)
Run Code Online (Sandbox Code Playgroud)
其中id是字符串"1,2,3,4,5",它只返回第一行.注入一组id的正确方法是什么?