Scalaの強力な拡張:コレクション
今日、Scalaって強力だなぁ〜と思ったことを2つ。
まず、コレクションの扱い。 JavaだとIteratorにして、nextで・・・みたいな実装をすることがあるが、Scalaだとこれがめんどい。 foreach使いたいのに・・・というときはこの一行を!
import scala.collection.JavaConversions._
これで、 List<String>
だとしても、foreachメソッドが追加されます。
(Scalaのバージョンが2.8の場合)
参考URL ■ Twitter / Kota Mizushima: @itoasuka import ....JavaC ... http://twitter.com/kmizu/status/12477994337
import ....JavaConversions._ すれば、あとは、scalaの*mutableな*SetからJavaのSetへの自動変換が提供されます。
もうひとつ、強力だと思ったのはキャスト。 Javaではこう書く。
((Text)text).getValue();
Scalaだとこう書く。
text.asInstanceOf[Text].getValue
直感的〜!!ということです。
キャスト慣れしてる場合はなにそれ?って感じかもしれないけど、左から右に、思い通りに書けるのがステキ。