第2講 変数を理解しようその1 
第6話 変数の加工その2
実は、データの加工で大事なのは今話の話題の方です。
今話は、コンピュータにいろいろな演算をさせていくときの基礎となる重要な話です。
そして、
    a="太郎は賢い";
の=と変数は、数学の=と変数とは違うということが理解できると思います。
関数や変数といっても、数学の関数や変数とは違うので、ほんの少しも苦手意識をもつ必要はないのです。

さて、前回のコードを次のように変更したときの実行画面が予想できるでしょうか。
class x{
  public static void main(String args[]){
    String a;
    a="太郎は";
    System.out.println(a);
    a=a+"賢い";
    System.out.println(a);
  }
}

「えっ?おかしくない」と思いになりませんでしたか。
   a=a+"賢い";
=や変数が数学と同じでしたら、こんなことはあり得ませんね。
右辺のaを左辺に移項して計算したら、
   0="賢い";
となってしまうわけですから。
プログラミングにおける=の意味とは何なんでしょうか。
その意味は後で説明することにして、先に実行画面を見てみましょう。
30行下です。





















コンソール画面
C
なんと、前話の実行画面と全く同じです。
つまり、
class x{
  public static void main(String args[]){
    String a;
    a="太郎は";
    System.out.println(a);
    a="太郎は賢い";
    System.out.println(a);
  }
}

class x{
  public static void main(String args[]){
    String a;
    a="太郎は";
    System.out.println(a);
    a=a+"賢い";
    System.out.println(a);
  }
}
は、全く同じプログラムです。
どうしてでしょうか。
実は、=とは決して数学の=ではありません。
    a="太郎は";
は、aというラベルの貼ってある箱に、"太郎は";を入れなさいです。
C言語
入門

ですから、
    a="太郎は";
は、実際には
    
a←"太郎は";
のようにイメージした方がよいのです。

さて、では
    a=a+"賢い";
はなんでしょうか。
実は、これは
    a="太郎は"+"賢い";
と同じです。つまり、
    a=a+"賢い";
は、aの箱から『太郎は』を取り出しそれに『賢い』を加えなさい、そして改めてaの箱に入れなさいの命令なのです。
C言語
    a=a+"賢い";
は、実際には
    
a←a+"賢い";
をイメージした方がよいのです。

さて、今話が理解できれば次話以降で扱う数の代入や演算の話題もすんなり理解できるはずです。



第5話へ 第3講第1話へ

戻る

VB講義へ
VB講義基礎へ
vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第1部

初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第2部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第3部