株式会社ラクス  ITエンジニア総合支援サイト スタックアスタリスク フルマネージド専用サーバー エクスユニット
ITエンジニアとして 知る 学ぶ
 
Java
.NET
PHP
プログラミング一般
DataBase
システム/サーバ構築
システム/サーバ運用
技術系一般知識
 
 
>IT技術情報>.net>C#プログラミング入門 第3回:C#基礎 パート2(クラスライブラリ)
【連載 】C#プログラミング入門 

第3回:C#基礎 パート2(クラスライブラリ)

 

【 ページ 】 | 1 | 2 | 3 |

<<前のページへ


3.動的配列

 プログラミングをする上で配列は何かと便利なのですが、ひとつだけ大きな欠点があります。それはサイズが固定されているということです。実際のプログラムでは最初に配列のサイズを決めることができないような場合がたくさんでてきます。たとえばユーザからの入力文字を次々に配列に格納していくような場合です。あらかじめユーザの入力する文字列のサイズを決めておくことができません。C#ではサイズの決まっていない配列を強力にサポートするクラスがクラスライブラリに用意されています。主にSystem.Collections名前空間に配置されています。

クラス 説明
ArrayList 普通の動的配列です
HashTable 添え字番号の代わりにキーによってアクセスできる動的配列
Queue 先読み先出しの動的配列
SortedList キーによって順番が保たれる動的配列
Stack 後入れ先出しの動的配列
System.Collectionsの主なクラス

 ArrayListがもっとも良く使われる動的配列でしょう。ArrayListを例に使い方を見ていきたいと思います。

1: 	ArrayList list = new ArrayList(); // listという名前のArrayListを作成
2: 	list.Add("First Item"); //First Itemという文字列をArrayListに追加
3: 	list.Add("Second Item"); //Second Itemという文字列をArrayListに追加
4: 	string firstItem = (string)list[0]; //stringにキャストが必要
5: 	Console.WriteLine(firstItem);

 1行目ではlistという名前のArrayListを作成しています。2行目と3行目は作成したArrayListであるlistにデータを追加しています。データの追加にはAddメソッドを使用しています。ここで配列には存在した"型の指定"が動的配列ではないことにお気づきかもしれません。そうです、動的配列は便利なことに何でも入れることができるのです。これをboxingといいます。その代わりにデータを取り出したときに型を指定してやる必要があります。4行目を見てみましょう。list[0]で取り出したデータはそのままでは型が不明です。そのため取り出した後にデータを使用するためには型を指定しなおす必要があります。(string)というのが型指定です。取り出したデータをstring型とみなしますという宣言にあたります。C#の世界ではこれをunboxingと呼んでいます。これが基本的なArrayListの使い方です。

4.文字列

 すでに何回かでてきましたが、C#にはstring型という文字列型がサポートされています。string型の便利な機能とToStringメソッドについて説明します。

4.1.文字列の連結


 string型は簡単に連結することができます。連結には+記号を用います。

1: 	string s1 = "文字列1";
2: 	string s2 = "文字列2";
3: 	string s3 = s1 + s2; //stringは+で繋げることができる

 s3は、文字列1と文字列2が連結されて、
                         文字列1文字列2
という文字列になります。

4.2.文字列の比較


文字列が等しいかどうかの比較は==を使います。

1: 	string s1 = "Hello";
2: 	string s2 = "Hello";
3: 	string s3 = "Bye";
4: 	
5: 	if(s1 == s2) //s1とs2が等しいか比較
6: 	{
7: 		Console.WriteLine("s1はs2と等しい");
8: 	}
9: 	else
10: 	{
11: 		Console.WriteLine("s1はs2と等しくない");
12: 	}
13: 	
14: 	if(s2 == s3) //s2とs3が等しいか比較
15: 	{
16: 		Console.WriteLine("s2はs3と等しい");
17: 	}
18: 	else
19: 	{
20: 		Console.WriteLine("s2はs3と等しくない");
21: 	}


結果出力は、
s1はs2と等しい
s2はs3と等しくない
となります。

4.3.文字列と数字の変換


 C#では文字列はstring型、整数はint型と明確に分けられています。しかし時には文字列を数字に、もしくは数字を文字列に変換したいことがあります。C#のクラスライブラリにはstring型をint型に変換するSystem.ConvertクラスのToInt32メソッドが用意されています。

1: 	// 文字列2を作成
2: string si = "2";
3:
4: // int型に変換
5: int i = System.Convert.ToInt32(si);
文字列から数字への変換

 int型からstring型への変換はToStringメソッドを使用します。ToStringメソッドはint型の変数から直接呼び出します。

1: 			int i = 100;
2: string s = i.ToString(); //string型に変換
数字から文字列の変換


>>次のページへ

【 目次 】
1.クラスライブラリ
2. 配列
3. 動的配列
4. 文字列
4.1.文字列の連結
4.2.文字列の比較
4.3.文字列と数字の変換
5. ファイル操作(出力)
5.1.ファイルへの出力
5.2.ファイルからの入力
5.3.文字列と数字の変換
6. おわりに

▼Java や Linux を体系的に学びましょう!▼
Stack*のラクスが、
新学習方式のカリキュラムを開発しました!
14700円から(*1)、Java や Linux を体系的に学べます!!
(*1 テキスト代のみの税込料金です)


 

サイト内全文検索
スタックアスタリスクのサイトを検索します。検索には、Googleを利用しています。そのため、最新の情報で検索されない可能性があります。


簡単レンタルメールフォーム
300メガ1000円〜 XBitのレンタルサーバー
500メガ1995円〜 電話サポート/PostgreSQL/専用SSLなどにも対応!お客様のニーズを網羅したレンタルサーバ
ホームページ制作のアシストウェブ
STACK* 執筆の講師陣から習得する!! ITエンジニアスクール アイティブースト
統合メールサポートシステム 〜MailDealer(メールディーラー)〜
システム開発,IT教育 〜株式会社アイティーブースト(ITBoost)〜
簡単 営業支援/顧客管理ツール Easy Sales
  利用規約 お問い合わせ・ご意見 スタックアスタリスクについて 運営会社について 
  レンタルサーバー ホスティング 専用サーバー メールフォーム ショッピングカート メール共有 ITエンジニア派遣 Linux講座 Java講座 メール配信 レンタルサーバー Webデータベース 検索サービス
CopyrightcRAKUS Co.,Ltd. All Rights Reserved.  メール管理・共有 顧客管理(CRM)もできるメール対応サポートシステム JAVA LINUX CISCO 技術者派遣 育成事業 株式会社ラクス