この記事について Go言語のスライスについて、その内部構造を整理します。 まとめ スライスとは、配列をラップして使いやすくした型 スライスと、配列の実体はメモリ上では別のオブジェクト スライスは以下の3つのパラメータを持つ構造体 配列の実体へのポインター 配列のうち、そのスライスで使用可能なサイズ (Len) 配列の実際のサイズ (Cap) reflect.SliceHeader を用いてスライスの構造を見ることが出来る
この記事について Go言語のスライスについて、その内部構造を整理します。 まとめ スライスとは、配列をラップして使いやすくした型 スライスと、配列の実体はメモリ上では別のオブジェクト スライスは以下の3つのパラメータを持つ構造体 配列の実体へのポインター 配列のうち、そのスライスで使用可能なサイズ (Len) 配列の実際のサイズ (Cap) reflect.SliceHeader を用いてスライスの構造を見ることが出来る
まとめ スライス は 配列 のラッパーのようなもの。 スライス への操作をおこなうと、内部ではいい感じで 配列を操作してくれる。 スライス はその 配列 を参照する。 スライス という名前には 「配列の断片を使う」というニュアンスがあるように感じられる。 この動作を便宜的に「要素数を気にしないタイプの配列」として扱えるイメージ。 Gopher の間では「スライスだけで良いじゃん」という説もあるようだ。 検証 1. 配列をスライスする 配列から一部の要素だけをスライスしてみる。 (スライスっていう名前通りの使い方) array := [3]string {"Alice", "Bob", "Carol"} slice := array[:2]
ScalaのListとJavaのListの使い方とかについてのメモです。 scala.List scala.Listはイミュータブルです。Javaのようにaddしたりはできません。 addしたいのであれば以下のように再生成する必要があります。 package com.tsukaby.scala.sample object Main { def main(args: Array[String]) { var scalaList: List[Int] = List(1, 2, 3) scalaList = scalaList ::: List(4) for (value <- scalaList) { println(f"value=$value%d") } } } :::はリストを連結して新しいリストを返却します。 scala.collection.mutable.ListBuffer Ja
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く