我是scala的新手,我一直在寻找如何找到如何构建我用我的函数编写文件的文件。此外,如何从cmd调用该函数。我正在尝试编写一个简单的函数,就像了解如何开始编写程序一样。像下面这样简单的东西会很有用。
def test (n : Int){
println(n + n)
}
请记住我在Notepadd ++中写这个。我的第一个任务是格雷码。所以我的最终目标是弄清楚如何运行文件和调用函数。下面的灰色代码有很多解决方案是1。
def gray(n: Int) ={
def gray(n: Int, res: List[String]): List[String] = {
val nRes = res.map("0" + _) ::: res.reverse.map("1" + _)
if(n == 1) nRes
else gray(n-1, nRes);
}
gray(n, List(""))
}
我尝试过的事情是创建一个目标文件并运行它并解析args以传递给函数。
object test1 {
def main(args: String) {
n = args.toInt
test(n);
}
def test(n: Int){
println( n + n)
}
}
答案 0 :(得分:3)
test1
缺少val
的{{1}}声明。添加它会给下面的代码编译好。
n = args.toInt
将其加载到REPL中将显示object test1 {
def main(args: String) {
val n = args.toInt
test(n);
}
def test(n: Int){
println( n + n)
}
}
。然后,您可以拨打defined module test1
,拨打test1.main("1")
并打印2.如果您不熟悉REPL,请参阅此link。
test
答案 1 :(得分:0)
我实际上在玩完它之后想出来了。解决方案就像Console.readInt一样简单。这抓住了用户输入控制台的价值。
object project1{
def main(args: Array[String]) {
println("Hello World")
println("Enter a number")
val x = Console.readInt
test(x);
// println(x)
}
def test(x: Int){
println( x + x)
}
}
在控制台上,您只需键入scale project1.scala,此时函数就会运行,就像您使用java或C ++一样,输入密钥时会从屏幕上获取值。
所以上面的控制台看起来像。
桌面/> scala helloWorld.scala
Hello World
输入数字
3
6