コンテナ_(データ型)とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > コンテナ_(データ型)の意味・解説 

コンテナ (データ型)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/11 03:17 UTC 版)

コンピュータプログラミングにおいて、コンテナ: container)とはオブジェクトの集まりを表現するデータ構造抽象データ型またはクラスの総称である。コレクション: collection)とも言う。コンテナには複数の種類があり、それぞれ独自の方法でオブジェクトを組織的に格納する。

よく知られたものには、

などがある。

同じ分類のコンテナであっても、実装形態の違いから、各種操作の計算量(計算時間)やメモリ上に占める空間的特性などが異なるものがある。例えばリストには主に動的配列によるリストと連結リストがあり、それぞれ場面によって向き不向きがある。

コンテナクラスは一般的に以下のような操作を実装している。

  • 新しい空のコンテナを作成する
  • 格納しているオブジェクト(要素)の数を得る
  • すべての要素を取り除く(空にする)
  • 新しい要素を格納する
  • 特定の要素を取り除く
  • 格納している要素へのアクセス手段を提供する

ジェネリックプログラミングをサポートする言語や、動的型付け言語では、一般的にコンテナの要素にはどのようなデータ型のオブジェクトも取ることができるが、言語によっては要素の型が満たすべき要件が制約として課されていることもある[1]。この要件を満たせば、他のコンテナ型を要素に取るコンテナを定義することもできる。またコンテナのサイズは要素数に合わせて自動的に変化する。

コンテナがオブジェクトを格納する方法には2種類ある。によるものと参照によるものである。

値によるコンテナ
オブジェクトのコピーを格納する。要素へのアクセスはそのコピーを返す。あるオブジェクトをコンテナに格納した(このときコピーされる)後で外部で変更を加えても、コンテナの中身には影響しない。
参照によるコンテナ
オブジェクトへの参照やポインタのみを格納する。要素へのアクセスはその参照を返す。あるオブジェクトをコンテナに格納した後で外部で変更を加えると、コンテナの中身(その要素)が変更される。弱い参照によってガベージコレクションを考慮するものもある。

Javaのコレクション・フレームワークやC++STLなどで、多くの汎用コンテナが実装されている。なお、Javaの場合はジェネリクスは型消去によって実現されている[2]ことから、型パラメータにintのようなプリミティブ型を指定することはできず[3]java.lang.Objectから派生する参照型のみが許可される。そのため配列以外の汎用コレクションにプリミティブ型を直接格納することはできず、必ずjava.lang.Integerのようなプリミティブラッパークラスを使う必要がある。.NETのジェネリクスではこの点が改善されており、汎用コレクションの要素に値型・参照型を問わず任意の型を指定できる。

脚注

関連項目


「コンテナ (データ型)」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「コンテナ_(データ型)」の関連用語

コンテナ_(データ型)のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



コンテナ_(データ型)のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのコンテナ (データ型) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS