C#配列の基礎を即理解!初心者が知るべき情報満載!

web開発

2016/12/08

web開発

こんにちは。 Udemy で C# のコースを提供している 舩原です。

プログラミングを初めて学ぶ時、色々と覚える事が多くて大変ですよね。
そこで、今回は、覚えずとも必要になったときに見直してもらえるように、
C#の「配列」についての基礎をご紹介したいと思います。
(ぜひ、ブックマークして必要な時に見直してください)

配列とは?

プログラミング言語によって、若干意味合いが違ってきますが、
C# においては、「複数のデータを格納・取り出しができるもの、複数のデータの集合」
という感じで考えるといいのでしょう。

ただ、上記の説明だけでは、分からないと思います。
そこで、以下の章から早速コードを使って順に説明していきます。

 

配列の宣言

C# において配列は、宣言しないと使えません。
そして宣言は、格納できる要素の型を使って表現されています。

例えば、 int型のデータを格納する配列を作成するならば、

コード1

と宣言します。
これで、int型の要素を10個格納できる配列 array1 が使えるようになります。

同様に

コード2
コード3

と書くと double型の要素3個格納できる array2 や object型の要素5個格納できる array3 ができます。

 

配列の要素に代入

配列の宣言の方法が分かったら、次は配列の使い方です。
宣言した後に配列にデータを入力したり、配列の要素を使ったりしてみたいと思います。

以下は、配列の要素に整数を入れています。

コード4

上記のように
配列を表す変数の後に “[添字]” としたものに代入する形で、
配列にデータが格納できます。

データの格納ができたなら、次は配列の要素の使い方です。
要素を取り出すには、格納したときの添字の使い方と一緒です。

コード5

これで、変数data に array5の2番目の要素である「3」が格納されます。

 

配列の初期化

配列の宣言、格納や取り出しが分かったら、
配列を使って色々プログラミングをしていく事になるのですが、
int型の配列などを使っていると、最初にいろいろな値で初期化しておきたい!と思う事があります。

そんな時は以下のように、配列を宣言し、配列の要素に値を代入していってもいいでしょう。

コード6

上記のように書いてもいいですが、、初期化専用の書き方もあります。

コード7

また、代入される要素とその要素数が決まっているので、省略できて

コード8

と要素数3 を省略して書いても大丈夫です。

さらには、new int[] も省略できます。

コード9

コード9が短い初期化方法でしょう。

それぞれすべて同じ内容を指しています。
私はどれを使ってもいいと思っているので、
どれを使うかは分かりやすさや好みで決めてもらって大丈夫でしょう。

 

配列の要素数を取得する方法

配列の要素を取得する方法は、いろいろありますが、
配列は、データの集合でもあるので、C#において配列はクラスで表現されています。
Array クラスが配列のクラスとなります。

Arry クラスの説明は以下のマイクロソフトのドキュメントで調べていただくのがいいでしょう。

https://msdn.microsoft.com/ja-jp/library/system.array.aspx

今回は、要素数を調べるので、Array.Length を使います。

https://msdn.microsoft.com/ja-jp/library/system.array.length.aspx

コード10

Length プロパティは、配列の要素の総数を出力します。
ここでは、int型の要素数100の配列を宣言していますので、n には 100が入ります。

 

配列の要素を、繰り返し構文(foreach文・for文) を使って処理する

配列の要素一つ一つに対して処理をしていきたいという時は、foreach/for 文を使っていきます。

コード11

上記コードは配列 array11 の一つ一つが element として参照され System.Console.WriteLine() でコンソールに出力しています。

for文もありますが、配列を繰り返し処理するという部分においてメリットはありません。
foreach を積極的に使っていくと初心者は良いと思います。
一応、for文で同じ事をした時のものも記載しておきます。

コード12

for のカッコの中で 変数i を宣言して、それを利用している方法です。C言語から流用された文法だろう事が想像できますね。

 

配列のソートについて

最後にソートについてお話しましょう。
配列のソートについては、
Array.Sort とつかうことになります。

コード13

配列array13 を Array.Sort に引数として渡してあげるだけです。
すると、array13の中のデータがソートされます。

文字列の場合はどうでしょうか?
以下のように文字列の配列も Array.Sort を使ってソートできます。

コード14

なお、この記事では取り上げませんが、ソートしたい場合は、配列に格納する方法だけでなく、Listクラスを使用してソートする方法もあります。

 

おわりに – 今後の学習の仕方

以上で、配列についての基礎を紹介した今回の記事はおしまいです。

この記事を読み終わったあなたなら、
配列をこうしたいけどどうしよう、と思う事もでてくるでしょう。

そんな時は C# プログラミングガイドというマイクロソフトのWebサイトのページを見ると色々載っているので参考になるかもしれません。

https://msdn.microsoft.com/ja-jp/library/9b9dty7d.aspx

もっと簡単なところから学びたいという方は、ぜひ僕のコースを受講してみてください。
より高度な事を学びたいという方は、ぜひ本などを読んで学習していきましょう!

では、プログラミングをこれからも楽しんでください!

  

プログラミング未経験でもC#プログラミングができるようになる!

初心者向け C#で学ぶプログラミングの基本 - Udemy

初心者向け C#で学ぶプログラミングの基本 - Udemy

Virtual Studio のインストールから、プログラミングの基本まで、プログラミングが分からない人でも、プログラムが分かるようになる講座です。

動画で学習する

  • シェア
  • ツイート
  • Poket
  • はてなブックマーク
  • フォロー
  • シェア
  • ツイート
  • Poket
  • はてなブックマーク
  • フォロー

関連記事