【C++】vectorの内容を出力・表示する方法をわかりやすく解説
vector(ベクター)は動的配列に似ていますが、サイズを自由に変更できる点が大きな特徴です。vectorは、要素の挿入や削除に応じて自動的にサイズが変化するシーケンスコンテナであり、コンテナとは同じ型のデータを保持するオブジェクトのことを指します。
vectorは、将来的な要素の追加に備えて余分なメモリを事前に確保することがあります。また、vectorの要素は連続したメモリ領域に格納され、新しいデータは基本的に末尾に追加されます。
以下は、C++でvectorの内容を出力するサンプルコードです。
サンプルコード
#include<iostream>
#include<vector>
void print(std::vector <int> const &a) {
std::cout << "The vector elements are : ";
for(int i=0; i < a.size(); i++)
std::cout << a.at(i) << ' ';
}
int main() {
std::vector<int> a = {2,4,3,5,6};
print(a);
return 0;
}実行結果
上記プログラムの実行結果は以下のとおりです。
The vector elements are : 2 4 3 5 6
コードの解説
このプログラムでは、関数print()の中にvectorの要素を取得して出力する処理が記述されています。forループでは、ループの最大反復回数としてsize()でvectorのサイズを取得し、at()を使って各要素へアクセスしながら順番に出力しています。
for(int i=0; i < a.size(); i++) std::cout << a.at(i) << ' ';
main()関数では、初期化子リストを使ってvectorを作成し、その要素を出力するためにprint()関数へ渡しています。
std::vector<int> a = {2,4,3,5,6};
print(a);その他の出力方法
C++11以降では、範囲ベースのforループを使うことで、より簡潔に記述することもできます。
for (int x : a) {
std::cout << x << ' ';
}さらに、イテレータを使用する方法もあります。begin()からend()まで順にたどりながら、間接参照演算子*で要素を取り出して出力します。
for (auto it = a.begin(); it != a.end(); ++it) {
std::cout << *it << ' ';
}状況に応じてこれらの方法を使い分けることで、可読性の高いコードを書くことができます。
-
JavaでHashMapの要素を出力する方法を徹底解説
HashMapとは HashMapはAbstractMapクラスのサブクラスであり、キーと値のペア(キーバリューペア)を格納するために使用されるコレクションクラスです。各キーはマップ内の1つの値に対応付けられ、キーは必ず一意である必要があります。つまり、同一のキーをマップに登録できるのは1回だけで、重複したキーは許可されません。一方、値については、複数の異なるキーに対して同じ値を割り当てることが可能です。 要素の追加にはHashMapクラスのput()メソッドを使用し、格納された要素の取り出し(反復処理)にはIteratorインターフェースを使用します。 put()メソッドの構文 public
-
Rのリストの全要素をforループで出力する方法
Rでは、ベクトルに対して使うforループと、リストに対して使うforループに本質的な違いはなく、通常どおりの構文でそのまま利用できます。たとえば、Listという名前のリストのすべての要素を表示したい場合は、for(i in List){print(i)}と書くだけです。ここで変数iは、ループが1周するごとにList内の各ベクトルを順番に参照します。 サンプルリストの作成 まず、さまざまな種類のベクトルを含むリストを作成します。文字ベクトル、正規分布・ポアソン分布・一様分布・指数分布に従う乱数、丸めた整数値、そして1から100までの連続数列を要素として持たせています。 List <- li