Statistical Programming

2013-11-11から1日間の記事一覧

JavaとScalaの違いその9 ... Trait>Interface

ポリモーフィズムに関してJavaとScalaは若干違いがあります。 それはInterfaceがScalaには存在しないということです。 ん、じゃあポリモーフィズムはないの?? →代わりにTraitという、classとinterfaceの中間みたいなやつが存在します。 このtraitをScalaで…

JavaとScalaの違いその8 ... arrayは使わない!Listコレクション

今日はコレクションのひとつであるlistについてです。 import scala.collection.mutable.ListBuffer object ListTest extends App { def printlist(listInt:ListBuffer[Int], listStr:ListBuffer[String])={ println(listInt) println(listStr) } //空のリス…

JavaとScalaの違いその7 ... こんすとらくたああ

Javaプログラマ→Scalaへの道第7弾です!! 今回はJavaとScalaで結構違いがあるコンストラクタに関して。 基本コンストラクタ、補助コンストラクタ、親クラスのコンストラクタの3つについて説明(実質ただのコード笑)です。 //ParantCクラスを継承し親クラ…

JavaとScalaの違いその6 ... Setter & Getter

Scalaにはstaticキーワード自体が存在しません(その代わりcase classというより便利なクラスは存在しますが)。 ですのでclassは基本的にインスタンス化しなくては使えません(case class以外)。 Javaではクラスは設計図だからインスタンスしてねーとかい…

JavaとScalaの違いその5 ... 最強、ぱた〜んまっちんぐうううう

今回はScalaでmatchingをします! といってもJavaでswitchを知っている方にはありきたりなので Javaとの違いだけちょろっと。 まず大きく違うのが、いろいろな型のマッチングが可能です。 コレクションもマッチングでき、型に応じた処理が簡単にできます。 …

JavaとScalaの違いその4 ... 多機能なfor

Scalaではforが多機能です。 object For extends App { //0~4を表示.5は表示されない for(i<-0 until 5){ println(i) } println("change") //1~5を表示。今度は5が表示される for(i<-1 to 5){ println(i) } println("change") //5~1を表示。順番が逆。 for(i…

JavaとScalaの違いその3 ... アクセス修飾子はかなり省略

アクセス修飾子についてです。 javaではこれを省略した場合同じパッケージ階層からアクセス可能でしたけど、 scalaでは省略=publicとなり記述が楽になりました。scalaのアクセス修飾子は以下の順になっています。 省略;=public ↓ protected[package name];…

JavaとScalaの違いその2 ... Importがちょいと便利に

前回に引き続きJava→Scalaの学習を進めたいと思います。 今回は関数の違いとimportのやり方をちょろっと。 メモなのでかなり雑です。はい。 package test import java.io._; object Test2 extends App { //可変長引数を取る関数 def printStrings(strings:St…

JavaとScalaの違いその1

JavaとScalaの違いにフォーカスしながらScalaを学んでいきたいと思います。 かなりありますが、まずはobjectでしょうか。 下のプログラムをみたらすぐわかるのですが、Scalaではシングルトンオブジェクトを簡単に生成できるのです!!通常javaではシングルト…