まつざきの技術メモ

エンジニアの私的な技術メモです。


コメントする

IntelliJプロジェクトにScalaのjarファイルを追加

ScalaのIDEとしてIntelliJを使い始めた。

使い方がまだよくわからない。。。

新規プロジェクトを作成すると、Scalaのjarファイルが参照されてないので、手で追加する必要がある。

やり方がまずいのか?

ProjectビューでExternal LibrariesのJDKあたりを選択しておいて、

メニューから「View」-「Open Library Settings」を選択する。

2つあるけどどっちでもOK。同じ設定ダイアログが開く。

IntelliJはNetBeansと違って、実行するたびにコンパイルしないので、

ソースを修正してなくて実行する場合は早いけど、

ソース修正してたらコンパイルがNetBeansより遅いぞ。。。


コメントする

Scalaの関数型言語的な集計ロジック

val values = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

val sum = values.foldLeft(0)(_ + _)

とするとsum=55となる。
foldLeftの引数が初期値。

Longにしたい場合は、

val sum = values.foldLeft(0L)(_ + _.toLong)

で、foldLeftの省略形(なのかな?)が、

val sum = (0L /: values){_ + _.toLong}

変数はイミュータブルを使い、ループで回さないのが関数型言語的だそうです。

参考にしたサイト

http://www.ne.jp/asahi/hishidama/home/tech/scala/sample/sum.html
http://d.hatena.ne.jp/Naotsugu/20100523/1274636814