Kotlinによる多次元配列

Kotlinによる多次元配列(multidimensional array)の作り方です。

array.kt

fun main(args:Array<String>) {
  var a:Array<Int> = Array<Int>(10, {0})
  var b:Array<Int> = Array<Int>(10, {i -> i})
  var c:Array<Int> = arrayOf(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
  for (x in a) println(x)
  for (x in b) println(x)
  for (x in c) println(x)

  var d:IntArray = IntArray(10)
  var e:IntArray = intArrayOf(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
  for (x in d) println(x)
  for (x in e) println(x)
}

multiarray.kt

fun main(args:Array<String>) {
  val n1 = 10
  val n2 = 20
  val n3 = 30


  /* 1-dimensional array in Kotlin */

  var a1 = Array<Int>(n1, {0})
  var b1:Array<Int> = a1
  for (i1 in 0..n1 - 1) {
    println(b1[i1])
  }

  var c1 = IntArray(n1)
  var d1:IntArray = c1
  for (i1 in 0..n1 - 1) {
    println(d1[i1])
  }


  /* 2-dimensional array in Kotlin */

  var a2 = Array(n1, {Array(n2, {0})})
  var b2:Array<Array<Int>> = a2
  for (i1 in 0..n1 - 1) {
    for (i2 in 0..n2 - 1) {
      println(b2[i1][i2])
    }
  }

  var c2 = Array(n1, {IntArray(n2)})
  var d2:Array<IntArray> = c2
  for (i1 in 0..n1 - 1) {
    for (i2 in 0..n2 - 1) {
      println(d2[i1][i2])
    }
  }


  /* 3-dimensional array in Kotlin */

  var a3 = Array(n1, {Array(n2, {Array<Int>(n3, {0})})})
  var b3:Array<Array<Array<Int>>> = a3
  for (i1 in 0..n1 - 1) {
    for (i2 in 0..n2 - 1) {
      for (i3 in 0..n3 - 1) {
        println(b3[i1][i2][i3])
      }
    }
  }

  var c3 = Array(n1, {Array(n2, {IntArray(n3)})})
  var d3:Array<Array<IntArray>> = c3
  for (i1 in 0..n1 - 1) {
    for (i2 in 0..n2 - 1) {
      for (i3 in 0..n3 - 1) {
        println(d3[i1][i2][i3])
      }
    }
  }
}


参考サイト

1.Create a two-dimensional array at runtime

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中