文字配列と文字列の相互変換
以下はC/C++プログラマ向けのオマケである。C#では、いかに容易に文字配列と文字列の間の相互変換ができるかを示す。
1: using System;
2:
3: namespace ConsoleApplication82
4: {
5: class Class1
6: {
7: static void Main(string[] args)
8: {
9: char [] ar1 = { 'A', 'B', 'C' };
10: foreach( char c in ar1 )
11: {
12: Console.WriteLine(c);
13: }
14: string s = new string(ar1);
15: Console.WriteLine(s);
16: char [] ar2 = s.ToCharArray();
17: foreach( char c in ar2 )
18: {
19: Console.WriteLine(c);
20: }
21: }
22: }
23: } |
|
文字配列と文字列の相互変換を行っているサンプル・プログラム13 |
C#では、C/C++と違って文字の配列と文字列はまったく別個のものとして扱われるが、それぞれを相互に変換することは極めて容易だ。 |
これを実行すると以下のようになる。
![](/fdotnet/csharp_abc/csharp_abc_014/csabc014_013.gif) |
サンプル・プログラム13の実行結果 |
最初に文字の配列の各要素が表示され、次に文字列に変換されたものが表示され、最後に再び配列に戻されたものが表示されている。
|
14行目のように、string(System.String)のコンストラクタに文字(char)の配列を指定すれば、その内容を文字列として生成する。また、16行目のように、文字列にToCharArrayメソッドを使うと、戻り値として、文字の配列が返ってくる。
C#では、C/C++と違って、文字の配列と文字列はまったく別個のものとして扱われるが、このように、必要とあれば、それぞれを相互に変換することは極めて容易になっている。
まとめ
C#の配列は、配列自身が1つのインスタンスであるため、少々分かりにくいところがあるかもしれない。しかし、極めて強力な初期化リストの記述能力を使いこなせば、他のプログラム言語よりも、コンパクトで強力なソースコードを記述できる可能性を秘めていると言えるだろう。
さて、次回はインターフェイスについて詳しく取り上げたいと思う。今回も1つだけインターフェイスを実装する事例を紹介しているが、インターフェイスの使い方だけでなく、それを使うことによって得られるさまざまな機能についても解説したいと考えている。
それでは次回もLet's See Sharp!
Insider.NET 記事ランキング
本日
月間