18

Python REPLでは、次のようなことができます。

>>> [1,2,3,4]
[1, 2, 3, 4]
>>> sum(_)
10

clojure REPLでは、これを行うことができます。

user=> "Hello!"
"Hello!"

user=> *1
"Hello!"

Scala REPLにこのようなものはありますか?

4

3 に答える 3

42

はい、ドット表記を使用して最後の結果を参照できます。

scala> List(1,2,3,4)
res0: List[Int] = List(1, 2, 3, 4)

scala> .sum
res1: Int = 10
于 2012-08-15T15:30:17.080 に答える
8

someについては、前の出力を参照できます。Scala REPL では、結果が次の形式で出力されることに気付いたでしょう。resNNresN: Type = value

Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_24).
Type in expressions to have them evaluated.
Type :help for more information.

scala> List(1,2,3,4)
res0: List[Int] = List(1, 2, 3, 4)

scala> "Hello!"
res1: java.lang.String = Hello!

まあ、それは本当の変数名です。この例では、REPL が開いている限り、(少なくとも私の知る限りでは)リストを as として、文字列を asとして参照できます。resNres0res1

scala> (res0.toString + res1) toLowerCase
res2: java.lang.String = list(1, 2, 3, 4)hello!
于 2012-08-15T18:27:52.537 に答える
-1

私は通常ちょうど打つ↑</kbd> key to bring back the last line of code and carry on typing. This has the advantage of keeping the whole expression together for easy cutting-and-pasting or editing later.

于 2012-08-15T22:50:46.440 に答える