Tag: scala

将元素附加到Scala中的列表的末尾

这听起来像一个愚蠢的问题,但我在互联网上find的只是垃圾。 我根本不能将T型元素添加到列表List[T] 。 我尝试了myList ::= myElement但它似乎创build了一个奇怪的对象,并访问myList.last总是返回放在列表中的第一个元素。

Scala:join一个可迭代的string

我如何“join”一个由Scala中的另一个string迭代的string? val thestrings = Array("a","b","c") val joined = ??? println(joined) 我想要这个代码输出a,b,c (通过“,”join元素)。

从macros中获取具有匿名类方法的结构types

假设我们要编写一个macros来定义一个具有某种types成员或方法的匿名类,然后创build一个静态types为该类方法的类的实例,等等。2.10中的这个macros系统是可能的。 0,types成员部分非常简单: object MacroExample extends ReflectionUtils { import scala.language.experimental.macros import scala.reflect.macros.Context def foo(name: String): Any = macro foo_impl def foo_impl(c: Context)(name: c.Expr[String]) = { import c.universe._ val Literal(Constant(lit: String)) = name.tree val anon = newTypeName(c.fresh) c.Expr(Block( ClassDef( Modifiers(Flag.FINAL), anon, Nil, Template( Nil, emptyValDef, List( constructor(c.universe), TypeDef(Modifiers(), newTypeName(lit), Nil, TypeTree(typeOf[Int])) ) ) ), Apply(Select(New(Ident(anon)), nme.CONSTRUCTOR), Nil) […]

parsing命令行参数的最佳方法是什么?

在Scala中parsing命令行参数的最好方法是什么? 我个人更喜欢轻量级,不需要外部的jar子。 有关: parsing命令行参数的Java库? C ++有哪些参数parsing器库? 在C#中parsing命令行参数的最佳方法

Scala中的“提升”是什么?

有时当我阅读Scala生态系统中的文章时,我读到了“提升”/“提升”的术语。 不幸的是,这并没有解释到底是什么意思。 我做了一些研究,似乎解除与function价值或类似的东西有关,但我无法find一个文本,解释以新手友好的方式实际上提升。 Lift框架有一个额外的混淆,那就是它的名字已经提升了,但是它并没有帮助回答这个问题。 Scala中的“提升”是什么?

我如何摆脱斯卡拉循环?

我如何打破循环? var largest=0 for(i<-999 to 1 by -1) { for (j<-i to 1 by -1) { val product=i*j if (largest>product) // I want to break out here else if(product.toString.equals(product.toString.reverse)) largest=largest max product } } 如何将嵌套循环转换为尾recursion? 从FPSDEM 2009的Scala讲座http://www.slideshare.net/Odersky/fosdem-2009-1013261在第22页: 打破并继续斯卡拉没有他们。 为什么? 他们有点必要; 更好地使用许多较小的函数问题如何与闭包进行交互。 他们不需要! 什么是解释?

适用于Android的Scala编程

我跟着斯卡拉和Android与斯卡拉2.7.3最后的教程。 由此产生的Android应用程序的作品,但即使是最基本的应用程序需要几分钟(!)编译,需要900 kb的压缩,这是一个移动应用程序的显示停止。 此外,IDE现在耗尽内存。 我认为dex不是为像scala-library这样的大型图书馆制作的。 所以我的问题是:有没有人真的这样做,是否有任何解决办法呢?

如何在Quasiquote中使用无定形?

我试图从Scala内部的quasiquote调用一个Shapelessmacros,我没有得到我想要的。 我的macros不会返回任何错误,但不会将Witness(fieldName)扩展为Witness.Lt[String] val implicits = schema.fields.map { field => val fieldName:String = field.name val fieldType = TypeName(field.valueType.fullName) val in = TermName("implicitField"+fieldName) val tn = TermName(fieldName) val cc = TermName("cc") q"""implicit val $in = Field.apply[$className,$fieldType](Witness($fieldName), ($cc: $className) => $cc.$tn)""" } 这是我的Field定义: sealed abstract class Field[CC, FieldName] { val fieldName: String type fieldType // How to extract […]

斯卡拉的案例class和class级有什么区别?

我在谷歌searchfind一个case class和一个class之间的差异。 大家都提到,当你想在类上进行模式匹配时,使用case类。 否则,使用类,也提到一些额外的津贴,如等于和哈希代码覆盖。 但是,这些是唯一一个应该使用案例类而不是类的原因吗? 我想在Scala中这个function应该有一些非常重要的原因。 什么是解释或有一个资源来了解更多关于斯卡拉案例类从?

Scala中的对象和类的区别

我只是在浏览互联网上的一些Scala教程,并已经注意到在一些例子中,一个对象是在示例的开始处声明的。 Scala中的class和object什么区别?