文字列。概要。

文字列は、特定の順序で並べられた文字のリスト (またはシーケンス) です。一連の文字全体が 1 つのオブジェクトとして扱われます。

文字とは、キーボードで 1 回のキーストロークで入力できるもの (文字、数字、反転) です。スラッシュまたはその他の文字)。
 「Hello world!」のように、文字列にはスペースを含めることができます。
空の文字列とは文字数が 0 個の文字列です
。 C Sharp は、引用符 ("") で囲まれたものをすべて文字列として受け入れます。文字列は string 型です。

覚えておくべき重要事項: C# の文字列は不変です。

入力演算子を使用して、文字列に新しい値を書き込むことができます。
<プレ> string s = Console.ReadLine(); たとえば、次のように単純に文字列値を変数に代入することもできます。< /スパン> <プレ> 文字列 s = "C シャープ"; 文字列の長さは次のように定義できます。 <プレ> int n = s.Length;


文字列比較。 文字列は、数値と同じように相互に比較できます。どちらの線が大きいか小さいかを判断できます

文字列を比較する場合、 文字コードが比較されます。文字エンコードは数百ではないにしても、数十種類あります。この概念を理解する最も簡単な方法は、最も単純な ASCII の 1 つを理解することです (これについてはこちら<) で読むことができます。 /a>) . 
最新のエンコーディングでは、ロシア語と英語の文字は両方ともアルファベット順に配置され、数字も小さいものから大きいものへと進むことを理解する必要があります。
たとえば、ASCII コード表では、英語の文字「A」のコードは次のようになります。 - 65、文字「a」 - 97、数字「0」コード 48 があります。ロシア語の文字は、ASCII コード テーブルの拡張部分 (128 ~ 255 の番号) にあります。大文字は小文字よりも前に配置されます(つまり、コードが小さくなります)。
使用されるエンコード テーブルのほとんどでは、パターンは同じで、小文字は大文字より後、数字は文字より前、ロシア文字は英語より後です。
文字または文字列を比較する場合、C# は文字をそれぞれの序数値に変換し、左から右に比較します。

例:<コード> "機関車" < 「steamboat」、単語の 5 番目の文字と「in」が異なるため< 「×」。

文字列を入力するときに任意の区切り文字ですぐに複数の部分に分割することが
できます。  同じ行に複数の数値変数を入力する前に、これを実行しました。 Split() メソッドを使用して、文字列を部分に分割しました。デフォルトでは、文字列はスペースで部分文字列に区切られます。
このメソッドを使用すると、文字列をスペースなどの部分に分割できます。そして文字列の各部分を個別の変数に書き込みます。
例: <プレ> string[] S = Console.ReadLine().Split(); この例では、スペースで区切られた 2 つの単語を入力すると、最初の単語は s[0] 配列のゼロ要素に格納され、2 番目の単語は 2 番目の s[1] に格納されます。

区切り文字として複数の文字を使用する必要がある場合は、コンマで区切って指定できます:
  <プレ> string[] S = Console.ReadLine().Split(new[] { ' ', '\n' });  入力文字列に複数の連続するスペースが含まれる可能性がある場合、最終的な配列にもスペースが含まれる可能性があります。これを除外するには、パラメータを追加する必要があります: <プレ> string[] S = Console.ReadLine().Split(new[] { ' ', '\n' }, StringSplitOptions.RemoveEmptyEntries); サブストリング区切り文字を使用する必要がある場合: <プレ> string[] S = Console.ReadLine().Split(new[] { "\\r\\n", "\r", "\n", "" }, StringSplitOptions.RemoveEmptyEntries);

文字列は「+」記号を使用して一緒に追加できます。この操作は文字列の連結または連結と呼ばれます。
たとえば、  <プレ> string s = "こんにちは"; 文字列 s1 = "世界"; Console.WriteLine(s + s1); 画面に「Hello world」というフレーズが表示されます。 (引用符なし)。
 

行インデックスの参照
文字列内の各文字には番号 (インデックスと呼ばれます) があり、C# プログラミング言語でのインデックス付けは 0 から始まります。つまり、最初の文字のインデックスは 0、2 番目の文字のインデックスは - 1 というようになります。
文字列文字には、角括弧 s[i] で示されるインデックスを使用してアクセスできます。
 
例 
<本体>
重要!
インデックス i の文字列要素にアクセスする場合、型 s[i]string ではなく char になります。これは、これが文字列ではなく、文字コード テーブル内の整数に対応する文字であることを意味します。特に、char  型の 2 つの要素を追加すると、これらの要素のコードを加算した整数が得られます。ただし、s[i] を表示すると、文字列の i 番目の文字が表示され、それに対応する数値は表示されません。

文字列 S H e l l
インデックス S[0] S[1] S[2] S[3] S[4]
文字にはインデックスによってアクセスできるため、変数ループを使用してすべての文字を反復処理できます。 、可能なインデックス値を受け取ります。たとえば、文字列 s のすべての文字コードを表示するプログラムは次のようになります: <プレ> for (int i = 0; i プログラムノート:
1) s.Length は文字列の長さを検索します。最初の文字のインデックスは 0 で、最後の文字のインデックスは s.Length-1 です。ループ変数 i は、0 から 0 までの値を順番に取得します。
s.Length<コード>-1;
2) 各行では、最初にシンボル自体が表示され、次にそのコードが表示されます。コードは  Convert.ToInt32();
メソッドを通じて取得できます。
同じ列挙をさらに短く記述することもできます。


foreach (文字 c in s)

    Console.WriteLine(c);
    Console.WriteLine(Convert.ToInt32(c));
}
<プレ> このスニペットでは、ループ ヘッダーがすべての をループします。文字を 1 つずつ変数 c に配置します。 文字列を操作する場合の C# の特徴は、文字列が不変オブジェクトであることです。つまり、文字列の個々の文字を変更することは
できません。 たとえば、次のステートメントは機能しません。
<プレ> s[5]= ";