小编Mar*_*rth的帖子

什么是朋友之间的Int.MaxValue?

Scala中int,float和long的最大值为:

Int.MaxValue = 2147483647

Float.MaxValue = 3.4028235E38

Long.MaxValue = 9223372036854775807L

来自Scala编译器的作者,Keynote,PNW Scala 2013,幻灯片16 What's Int.MaxValue between friends?:

val x1: Float = Long.MaxValue
val x2: Float = Long.MaxValue - Int.MaxValue
println (x1 == x2)

// NO WONDER NOTHING WORKS
Run Code Online (Sandbox Code Playgroud)

为什么这个表达式会返回true

jvm scala language-design

7
推荐指数
1
解决办法
3009
查看次数

在案例陈述中无法应用的对象

scala> object Test {
         def unapply[L,R](v: (L, R)) = Some(v)
       }
defined object Test

scala> (1, 2) match {
         case 1 Test 2 => println("First")
         case Test((1, 2)) => println("Second")
         case _ => println("Third")
       }
First
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么第一种情况对元组的两个值之间的对象起作用吗?

scala

5
推荐指数
1
解决办法
68
查看次数

如何撤消"git revert head"?

我想放弃当前分支中的更改而不提交,我不小心输入了命令git revert HEAD.prev分支(之前提交的)的变化似乎丢失了?

如何撤消git revert HEAD命令?

git

3
推荐指数
1
解决办法
1237
查看次数

scala Closure自由变量

val m1 = 99

val g = (_:Int) + m1

g(10)  // returns 109

val m1 = 88

g(10)  // returns 109
Run Code Online (Sandbox Code Playgroud)
var n1 = 99

val h = (_:Int) + n1

h(10)  // returns 109

n1 = 88

h(10)  // returns  98

var n1 = 66

h(10)  // returns 98
Run Code Online (Sandbox Code Playgroud)

有人可以向我解释这是如何工作的吗?为什么闭包不跟踪"自由变量"的变化?

下面的代码是用Scala编程编写的,但我发现很难将它链接到上面的场景:

Scala的闭包本身捕获变量,而不是变量引用的值.

scala

2
推荐指数
1
解决办法
477
查看次数

如何在gvim中增加数字来创建文本行

我有一些文本行,如下所示

text1
text1
text1
text1
Run Code Online (Sandbox Code Playgroud)

我想把它们改成

text1
text2
text3
text4
Run Code Online (Sandbox Code Playgroud)

在gvim中有一个简单的方法吗?我知道使用ctrl + v的可视块可以用其他字母替换一个字母.但我不知道如何生成序列号.

帮助赞赏.谢谢

vim block

2
推荐指数
1
解决办法
175
查看次数

在 Amazon Redshift 中对单个列使用多个替换条件

我有一个表,其中金额列有 , 和 $ 符号,例如: $8,122.14 作为值。我想编写一个替换函数来一次性替换该列上的 $ 和 。有什么方法可以在 Redshift 的一次替换中写入多个条件吗?此外,这是数据后处理的一部分,我在替换这些值后将数据从阶段表插入最终表。

我尝试了代码中给出的采取1和2中列出的方法,但都失败了。

采取1:insert into db.stage_table select (coalesce(replace(logging_amount,'$',','),''))) aslogging_amount from db.table;

采取2:insert into db.stage_table select (coalesce(replace(logging_amount,'$',',')) aslogging_amount from db.table;

两人都失败了。

预期结果应该是单个语句中的替换函数。

amazon-web-services amazon-redshift

1
推荐指数
1
解决办法
8415
查看次数

如何将Future [Seq [A]]转换为包含Seq [A]的Future?

我正在使用Finatra应用程序,我有一个Future[Seq[A]](来自Finagle电话).不过,我需要将其转换成一个包含一个新的对象Seq[A],例如

case class Container[A](s: Seq[A])
Run Code Online (Sandbox Code Playgroud)

那会导致Future[Container].

虽然我可以执行地图Future[Seq[A]],但目前还不清楚如何到达Future[Container[Seq[A]].

scala finagle finatra

0
推荐指数
1
解决办法
693
查看次数