連結文字列、String Templatesの件。
Convert concatenation to template
の警告が出た際の自分用のまとめ
住所として
東京タワーの住所 :東京都港区芝公園4丁目2−8
増上寺の住所 :東京都港区芝公園4丁目7−35(東京タワーの隣)
があった場合、
東京都港区芝公園4丁目 は共通している。なので、
//芝公園までの住所
val tokyoMetMinatoWardShibaKoen4 :String = "東京都港区芝公園4丁目"
//東京タワーの番地
val tokyoTower :String = "2−8"
//増上寺の番地
val zojojiTemple :String = "7−35"
//東京タワーを出力
print("東京タワーの住所:" + tokyoMetMinatoWardShibaKoen4 + tokyoTower);
//増上寺を出力
print("増上寺の住所:" + tokyoMetMinatoWardShibaKoen4 + zojojiTemple);
かなりJavaの記述ですが、これでも問題なく出力はされる。
がしかし、警告が出た。。
「Convert concatenation to template」
「連結をテンプレートに変換する」
とのこと。以下の通りに変換
//芝公園4丁目までの住所
val tokyoMetMinatoWardShibaKoen4 :String = "東京都港区芝公園4丁目"
//東京タワーの番地
val tokyoTower :String = "2−8"
//増上寺の番地
val zojojiTemple :String = "7−35"
//東京タワーを出力
println("東京タワーの住所:$tokyoMetMinatoWardShibaKoen4$tokyoTower");
//増上寺を出力
println("増上寺の住所:$tokyoMetMinatoWardShibaKoen4$zojojiTemple");
Kotlinはこの書き方が基本みたいです。
**$**で変数を持ってこれるんですね!
かなりスッキリして見やすくなった!!
雑談
たとえば、町田駅は。。
(東京都町田市原町田6丁目12−20)
println("$kanagawaPref$MachidaCity...")
実際に 神奈川県町田市でも郵便届くってよw