tanaka's Programming Memo

プログラミングについてのメモ。

501 計算-文字列の結合

ここでマスターしたいこと

  • 計算式の書き方を覚えること。
  • 文字列の結合方法を知ること。

文字列の結合

例1

  • textBox1.Textなどは、文字列型の変数である。
  • 以下に、textBox1に入力された文字列の前に「こんにちは、」と結合して表示するプログラムを抜粋する。
            string str;
            str = "こんにちは、" + textBox1.Text;
            MessageBox.Show(str);

f:id:am1tanaka:20141103231128g:plain
動作例

  • プログラムの意味は以下の通り。
    • 1行目:string型の変数strを定義
    • 2行目:変数strに「こんにちは、」という文字列と、textBox1.Textに入力された値を結合した文字列を代入する。
    • 3行目:変数strを表示する。
  • 上記は、以下のようにまとめて記載することもできる。
            MessageBox.Show("こんにちは、" + textBox1.Text);

例2

  • 以下のプログラムで、textBox1に入力された文字列の後ろに「さん」をつけることができる。
            MessageBox.Show(textBox1.Text + "さん");

演習

  • 「こんにちは、」の後ろにtextBox1に入力した文字列を結合し、さらにその後ろに「さん」と表示するプログラムを作成してみよう。

文字列の書き方

「こんにちは、」は、"(ダブルクォーテーション)に囲まれていて、textBox1.Textは囲まれていない。この違いはなんだろう。以下のように少しプログラムを書き換えて実行結果を観察してみよう。

            MessageBox.Show("こんにちは、" + "textBox1.Text");

実行結果は以下の通りである。

f:id:am1tanaka:20141103231204g:plain
動作例

次に、以下のプログラムを入力して実行してみよう。

            MessageBox.Show(こんにちは + textBox1.Text);

f:id:am1tanaka:20141103231407g:plain
今度はエラーとなる。

考察

試した時の挙動の違いは以下の通り。

  • "で囲むと、textBox1に入力された文字列は表示されず、そのままtextBox1.Textという文字列が表示された。
  • "を外すと、「こんにちは、」はエラーになった。

"で囲んだ部分は、プログラムではなく、単なる文字列として扱われる。例えば、nameという変数が定義してあった場合に、「name」とそのまま表示したい場合は"name"と書く。変数nameが記録しているデータを表示したい場合は、nameと記述する。

まとめ

  • +でつなげると、文字列を結合することができる。
  • 表示したい文字列は"で囲む。
  • 変数の中身を表示したい場合は"で囲まない。
  • 意味が分からなかったり、疑問に思ったことがあれば、プログラムに少し変更を加えて、その結果を観察することで意味を理解する手助けにすることができる。
  • 文字列は理解するのに苦労する人が多い。腑に落ちるまで、いろいろと試してみよう。


前へ | 目次 | 次へ