「Groovy イン・アクション」を読んでる。今 30ページ だ。
ここで、よくわからないコードが載ってた。
assert ('test' * 3 << 'hello').size() == 4 * 3 + 5
結果は正常に終わる。なんでかわからないので、
println 'test' * 3 << 'hello'
を実行した。結果は、
testtesttesthello
だった。
'test' * 3
は、雰囲気わかるんだけど
<< 'hello'
が、文字列結合?になってるのか?<< って シフト演算のイメージ。
ちなみに
println 2 << 3
の結果は、 16 だった。やっぱ、シフト演算だよね。
本を読み進めていったらわかるのかな?