小弟个人比较熟悉的语言是ruby与c++
目前在自学scala
已经可以用scala写出一些简单的东西
完成一些工作
多半是写script取代ruby的脚色
虽然觉得还是ruby比较好用
但是就是把这些当作是练习所以故意用scala
但是过程中却觉得有一些scala的精随还没办法掌握
希望前辈们提点一下
如果不适合在这边发问
请跟我说,我会把这篇文章删除
1. List的用法或时机
我想在写程式的时候遇到需要用 container 来储存资料的机会很高
如java中
ArrayList<int> al = new ArrayList<int>();
for(int i=0; i<10; i++) al.add(i);
但在scala中
var list = List(0)
for(i <- 1 to 9) list = i :: list
list = list.reverse
list 每次都回传一个新的物件而不是将值储存在物件自己本身
而且都插在最前面
最后使用的时候还要反过来
这样效率真的有比较高?
还是说list根本不是在这种状况下使用的
如果不是,建议是?
2. 尾递回指的是
递回我懂,但是很多地方都特别提到尾递回这个词
有特殊的意义或用途吗
3. DSL 的用途是
http://www.scala-lang.org/old/node/1403
虽然这篇里头有讲
但我不是很能意会
以上
麻烦大家了