Arrayの連結・追加

Posted 2010年11月29日 by

Arrayに別のArrayを追加したいとうとき、Arrayを連結するには、Array.conncatがあります。

Array.concatは、引数がnullだと
Exception in thread “main” java.lang.NullPointerException となります。
やはり、ScalaはJavaのようにnullを気にしたくない。

object testArrayConcat {
  def main(args : Array[String]) : Unit = {
	  val a = Array[Any]("111",2,3,5660.433)
	  val b = Array[Any](20.43,"222",22,33,1110)

	  Array.concat(a,b).foreach{println(_)}
	   println
	   Array.concat(null, b).foreach(println(_))
	   println
	   Array.concat(a, null).foreach(println(_))
  }
}

とういうことは、nullを見て処理を変えないと。

  def concat(a:Array[Any], b:Array[Any]) :Array[Any] = {
      if(a == null && b != null){
    	  b
      }else if(a != null && b == null){
    	  a
      }else if(a != null && b != null){
    	  Array.concat(a, b)
      }else{
    	  null
      }
  }

Post Details

  • Post Title: Arrayの連結・追加
  • Author: admin
  • Filed As: Scala
  • Tags:
  • You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

コメントを残す