C#で同じ文字が連続する文字列を作る
C#で文字列操作をしていると、スペースを10文字分とかハイフンを20文字分とかいう文字列を既存の文字列に足すという場面が出てきたりします。ということで、そんな文字列を作ってみました。
目次
同じ文字を繰り返すならループで作れば良いよね
繰り返す文字と、繰り返しの数はわかっているのです。であれば、まず思いつくのはforループです。
using System;
namespace string_trial
{
class Program
{
static void Main(string[] args)
{
string text = "";
for (int i=0; i<10; i++)
{
text = text + "-";
}
Console.WriteLine(text);
}
}
}
実行結果はこうなります。ハイフンを10個続けた文字列が出力されます。 単純ですけど、単純な文字列を作るためだけにループが回るってのは、何かもったいないですね。
同じ文字を繰り返す文字列を作るクラスがある
Stringクラスのコンストラクタを使うと、同じ文字を繰り返す文字列を簡単に作れます。 Stringクラスにはいくつかコンストラクタがありますが、今回使うコンストラクタは下記です。
string text = new String(c, count);
引数 |
型 |
内容 |
---|---|---|
c |
char |
繰り返すUnicode文字。 |
count |
int |
繰り返す回数。 |
戻り値はstring型のインスタンスです。
試してみた
ハイフンを10個連続した文字列を作って出力するアプリを作ってみます。
コード
using System;
namespace string_trial
{
class Program
{
static void Main(string[] args)
{
string text = new String('-', 10);
Console.WriteLine(text);
}
}
}
公開日
広告