- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我写了以下非常简单的测试:
import scala.collection.immutable.HashSet
class Test {
def m() = {
var s = new HashSet[Int]
s = s + 1
}
}
public class Test {
public void m();
Code:
0: new #12 // class scala/collection/immutable/HashSet
3: dup
4: invokespecial #15 // Method scala/collection/immutable/HashSet."<init>":()V
7: astore_1
8: aload_1
9: iconst_1
10: invokestatic #21 // Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
13: invokevirtual #25 // Method scala/collection/immutable/HashSet.$plus:(Ljava/lang/Object;)Lscala/collection/immutable/HashSet;
16: astore_1
17: return
public Test();
Code:
0: aload_0
1: invokespecial #30 // Method java/lang/Object."<init>":()V
4: return
}
1
在创建具有 1 个元素的新不可变集之前被装箱。为什么是盒装。
Int extends AnyVal
,不是
AnyRef
.
最佳答案
没错,Int extends AnyVal
,不是 AnyRef
.但是不变的 HashSet[A]
有 A
作为参数,它不是 specialized for primitive types ,即不是@specialized(Int) A
或类似的东西,所以它只能处理扩展 AnyRef
的引用类型。 ,原始类型必须装箱。幸运的是,这被 Scala 编译器隐藏了。
关于scala - 为什么 scalac 盒子是 Int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50333479/
我正在为 Scala 开发 servant-server 端口。这个想法是使用类型类解析来归纳构建可以处理请求的函数。我遇到了一些我不太明白的奇怪推理问题。 object Servant {
我设置了 -Xfatal-warnings我的 SBT 构建中的编译器标志,果然这段代码不能编译: package example sealed trait Errors object Errors
在GCC compiler we see几个'intermediate languages ':RTL , GENERIC and GIMPLE . This answer hints在 scalac
scalax -Xlint 帮助提供以下信息: $ scalac -Xlint:help Enable or disable specific warnings adapted-args
我想拆分我的 scalac插件到多个文件中。这听起来很简单,但由于来自 import global._ 的路径相关类型问题,我还没有设法实现它。线。 这是 Lex Spoon 的示例插件: packa
我正在将一个大型项目升级到 2.10.4 到 2.11.4。我的编译器崩溃了,无论如何要显示 的名称吗?源文件 那是导致崩溃的原因吗?我可以使用“last everitt/compile:compil
为什么这不能编译? 给出的错误是 class SomeElement needs to be abstract, since method eval in trait Element of type
我刚刚注意到我的代码中有一个错误,我在其中创建了一个新变量,但后来未能实际使用它。 我认为 scalac 会告诉我我的新变量未使用,但情况似乎并非如此,在搜索了少量谷歌搜索/手册页后,我找不到任何关于
在像这样的伴生对象上定义 val 时: object Foo { val bar = 3 } Scala 生成静态 final方法: $ scalac Foo.scala && javap Foo p
我们在以下情况下使用 Scalac -Xfatal-warnings 时会遇到问题: 宏内部使用的隐式值 宏自动生成的内部值 在这两种情况下,我们都看到 Scalac 无法编译,因为它检测到一些值未被
根据 Scala 教程,我们需要先使用 scalac filename.scala 编译 Scala 代码,然后再使用 scala filename 执行它。但是当我像 scala filename.
在 Martin Odersky 的“Programming in scala”一书中,它解释了 scalac 看起来很慢的原因(第 114 页): The reason is that every
我知道使用 -Werror 和 -Xfatal-warnings 我可以将警告作为错误,但是否仍然可以在编译输出中看到所有警告,但只会让其中的一些变成错误? 最佳答案 我不这么认为,单独使用 scal
我写了以下非常简单的测试: import scala.collection.immutable.HashSet class Test { def m() = { var s = new H
如果我运行“scalac -explaintypes”并看到类似的内容: Nothing NoType (base ne tr1) && base <: X?" mean?,我们在Sta
这是一段代码示例,第一印象看起来像 scalac。可以很容易地优化掉: val t0 = System.nanoTime() for (i <- 0 to 1000000000) {} val t1
首先。考虑以下代码 scala> val fail = (x: Any) => { throw new RuntimeException } fail: Any => Nothing = scala
我有一个 ScalaTest 2 类,它扩展了 GeneratorDrivenPropertyChecks,还间接扩展了 FeatureSpec 和 Matchers(通过我写的扩展那些的特征两个类)
我创建了一个小示例程序来尝试找出为什么没有编译更大的程序。 val o1: Ordered[Int] = 1 val o2: Ordered[Int] = 2 println(o1 java.lan
我列出了今天发现的问题的简短列表。我是 scala 新手,因此我的问题可能很微不足道。 假设我们有一个这样的类: abstract class A[+T] { def foo[S >: T](x: S
我是一名优秀的程序员,十分优秀!