by 唐草 [2016/03/13]
先週の金曜日に久々に電車に乗ったとき、目を疑うようなものを見た。
電車の広告用液晶画面にJavaのコードが書かれていたのだ。
System.out.print(A+B);
たしかにそう書かれている。
電車の中でJavaのコードを見ているなんてなんか悪い夢のような気がする。そのまま画面を凝視していたら、それはパソコン教室アビバの上級者向けコースの宣伝だった。
「プログラムだと文字列の足し算ができるんです」というような内容だった。
プログラムを知らない人からすれば、"ABC"+"DEF"の答が"ABCDEF"になるのは新鮮なことかもしれない。
ただ、Javaの文字列の足し算というのは、古くからある種の試金石として使われている話題。
確かに文字列(String型)の足し算は認められている。
だが、Javaマスターな方々は、文字列の足し算を好ましく思っていない。
今回の例題の用に直接出力する際は、足し算でも良いかもしれない。でも、値に保存する際に文字列足し算をしたらJava原理主義者に火あぶりにされてしまうかもしれない。それぐらいに恐ろしいこと。やってはいけないことらしい。
コンピュータがどう動いているのか、メモリがどう使われているのかを理解しているならば文字列足し算なんて効率の悪いことは絶対に許せないらしい。String型なんだからconcat(String str)メソッドを使えと迫ってくるらしい。
恐ろしい。
ま、ぼくは普通に文字列足し算使いまくりなんですけどね。