Groovyで文字列を連結する

文字列を連結するときは+演算子を使う。
「+演算子」を後ろに置いて、文字列リテラルを複数行に分けて書くことも出来る。
「+演算子」を前に置く場合には、\を後ろに書く必要がある。

println "いやよいや" + "よもすきのうち"

println  "184+184+184+184+184+184=1104" +
         "「いやよ」も6回言えば、「いいわよ」になる。"


println "98回言えば「いや正に!」(184×98=18032)とキャラが変わり、" \
      + "さらに2回言うと「いやよおぉ!」(184×100=18400)と超拒絶。" \
      + System.getProperty("line.separator") \
      + "http://twitter.com/#!/kenjieno/status/12365978145" \
      + System.properties['line.separator'] \
      + "184×256=47104 しないわよ" \
      + org.codehaus.groovy.tools.Utilities.eol() \
      + "http://twitter.com/#!/ooharak/status/21709128683"
[D:\workspace\groovy_SandBox]groovy Q051_文字列を連結する.groovy
いやよいやよもすきのうち
184+184+184+184+184+184=1104「いやよ」も6回言えば、「いいわよ」になる。
98回言えば「いや正に!」(184×98=18032)とキャラが変わり、さらに2回言うと「いやよおぉ!」(184×100=18400)と超拒絶。
http://twitter.com/#!/kenjieno/status/12365978145
184×256=47104 しないわよ
http://twitter.com/#!/ooharak/status/21709128683

よくある間違い

後ろの「\」を忘れる。

println "98回言えば「いや正に!」(184×98=18032)とキャラが変わり、" 
      + "さらに2回言うと「いやよおぉ!」(184×100=18400)と超拒絶。" \

以下のエラーになる。

Caught: groovy.lang.MissingMethodException: No signature of method: java.lang.String.positive() is applicable for argument types: () values: []

実行環境






Groovyの詳細についてはJavadocと以下の書籍を参考にしている。




Dierk Konig、Andrew Glover、Paul King、、Guillaume Laforge、Jon Skeet、杉浦 孝、櫻井 正樹、須江 信洋、関谷 和愛、佐野 徹郎、寺沢 尚史

出品者からお求めいただけます。
価格は記載時点のものです。購入前にAmazonでご確認ください。




問題自体は第2版のもの。rubyと似てる部分も多いので、ヒントにもなる。
写経でもいいが自分で考えるために他言語の例をGroovyで置き換えてる。




青木 峰郎、後藤 裕蔵、高橋 征義、まつもと ゆきひろ

価格: ¥ 2,940
価格は記載時点のものです。購入前にAmazonでご確認ください。




Groovyイン・アクションを読むならあった方が便利かな。

Rubyレシピブックは「ほんたった」で立ててる