カテゴリ: Go言語 更新日: 2025/12/19

Go言語の文字列連結の基本!+演算子とstrings.Joinを使いこなそう

Go言語の文字列連結の基本!+演算子とstrings.Joinを使いこなそう
Go言語の文字列連結の基本!+演算子とstrings.Joinを使いこなそう

先生と生徒の会話形式で理解しよう

生徒

「Go言語で文字列をつなげたいんですが、どうやったらできますか?」

先生

「Go言語では、文字列を連結する方法として + 演算子を使う方法と、strings.Join 関数を使う方法があります。」

生徒

「その二つはどう違うんですか?」

先生

「それでは、具体的に例を見ながら説明していきましょう。」

1. Go言語における文字列とは?

1. Go言語における文字列とは?
1. Go言語における文字列とは?

まず最初に、Go言語における文字列について理解しておきましょう。文字列とは、文字が連続して並んでいるデータのことです。たとえば「こんにちは」や「Hello World」のようなものです。Go言語では文字列を扱うときに、string型を使います。

文字列はテキストデータを扱うプログラムの基礎であり、メッセージ表示やファイル操作、API通信など様々な場面で使われます。そのため文字列を連結する方法を覚えることはとても重要です。

2. +演算子を使った文字列連結

2. +演算子を使った文字列連結
2. +演算子を使った文字列連結

Go言語で最も基本的な文字列連結の方法は、+演算子を使うやり方です。これは直感的でわかりやすく、小さなプログラムや少数の文字列をつなげるときに便利です。


package main

import "fmt"

func main() {
    greeting := "Hello"
    target := "World"
    message := greeting + ", " + target + "!"
    fmt.Println(message)
}

Hello, World!

この例では「Hello」と「World」を + で連結して、「Hello, World!」という文字列を作っています。文字列を一つずつ足し合わせるイメージなので、初心者にも理解しやすい方法です。

3. strings.Joinを使った文字列連結

3. strings.Joinを使った文字列連結
3. strings.Joinを使った文字列連結

複数の文字列をまとめて連結したい場合、strings.Join関数を使うのが便利です。これは標準ライブラリのstringsパッケージに含まれている関数で、スライス(配列のようなデータ構造)に入った文字列を一度に連結できます。


package main

import (
    "fmt"
    "strings"
)

func main() {
    words := []string{"Go", "is", "fun"}
    sentence := strings.Join(words, " ")
    fmt.Println(sentence)
}

Go is fun

ここでは、スライスwordsに入っている「Go」「is」「fun」を、空白で区切って連結しています。結果は「Go is fun」となります。区切り文字(この場合はスペース)を自由に指定できるため、カンマや改行を入れたいときにも使えます。

4. +演算子とstrings.Joinの使い分け

4. +演算子とstrings.Joinの使い分け
4. +演算子とstrings.Joinの使い分け

ここで、どちらを使うべきか疑問に思うかもしれません。目安としては以下のように考えると良いでしょう。

  • +演算子: 少数の文字列をつなげるときや、簡単な結合で済む場合。
  • strings.Join: 複数の文字列をまとめて連結したいときや、区切り文字を入れて整形したい場合。

たとえば、ログメッセージを作るときに短い文字列を少しだけ足すなら+演算子で十分です。しかし、大量の単語を一度に文にしたい場合はstrings.Joinの方が効率的で読みやすくなります。

5. 実用的な活用例

5. 実用的な活用例
5. 実用的な活用例

実際のプログラムでは、ユーザーの名前を表示したり、リストから文章を作ったりするときに文字列連結をよく使います。例えば、ユーザー名を結合してメッセージを作るプログラムは次のようになります。


package main

import (
    "fmt"
    "strings"
)

func main() {
    firstName := "Taro"
    lastName := "Yamada"
    fullName := firstName + " " + lastName
    fmt.Println("Hello, " + fullName)

    items := []string{"Apple", "Banana", "Cherry"}
    list := strings.Join(items, ", ")
    fmt.Println("Fruits: " + list)
}

Hello, Taro Yamada
Fruits: Apple, Banana, Cherry

この例では、+で名前を結合して挨拶文を作り、strings.Joinで果物のリストをまとめています。現実のアプリケーションでもこのような使い方をする場面は多くあります。

Go言語を基礎からスッキリ学びたい人や、 文法だけでなく「実用的な使い方」まで押さえたい人には、 定番の入門書がこちらです。

基礎からわかるGo言語をAmazonで見る

※ Amazon広告リンク

まとめ

まとめ
まとめ

文字列連結はGo言語の基礎であり重要な考え方

今回の記事では、Go言語における文字列連結の基本として、「+演算子」と「strings.Join」の二つの方法を中心に解説してきました。文字列は画面表示、ログ出力、ユーザーへのメッセージ、ファイル操作、通信処理など、あらゆるプログラムで必ず使われる要素です。そのため、文字列をどのようにつなげるかを正しく理解することは、Go言語を学ぶうえで欠かせない基礎知識と言えます。

+演算子による文字列連結は、直感的で分かりやすく、初心者が最初に覚える方法として最適です。二つや三つの文字列をつなげる程度であれば、コードも短く読みやすいため、簡単な処理では積極的に使えます。一方で、文字列の数が増えてくると、コードが長くなり、可読性が下がる場合があります。

そこで役立つのが、strings.Joinです。スライスに格納された複数の文字列を、一度にまとめて連結できるため、データの一覧表示や文章の組み立てなどに向いています。区切り文字を自由に指定できる点も大きな特徴で、カンマ区切り、空白区切り、改行区切りなど、用途に応じた表現が簡単に実現できます。

実務でもよく使われる文字列連結の考え方

実際の開発現場では、ユーザー名を含んだメッセージを作成したり、複数のデータをまとめてログとして出力したりする場面が多くあります。そのような場合、単純な連結には+演算子、一覧データや配列を扱う場合にはstrings.Joinといったように、状況に応じて使い分けることで、コードが読みやすく、保守しやすくなります。

以下は、記事の内容を振り返る意味も込めた、文字列連結のシンプルなサンプルプログラムです。


package main

import (
    "fmt"
    "strings"
)

func main() {
    title := "Go言語"
    topic := "文字列連結"
    message := title + "の" + topic + "を学びました"
    fmt.Println(message)

    points := []string{"基礎", "実用例", "使い分け"}
    summary := strings.Join(points, "・")
    fmt.Println("学習内容: " + summary)
}

このように、短い文章には+演算子を使い、複数の要素をまとめる場面ではstrings.Joinを使うことで、処理の意図が分かりやすいコードになります。初心者のうちは、どちらを使うべきか迷うこともありますが、実際に手を動かしながら慣れていくことが大切です。

先生と生徒の振り返り会話

生徒:「今回の記事で、Go言語の文字列連結って思っていたより大事なんだなと感じました。」

先生:「そうですね。文字列はどんなプログラムでも必ず使うので、基礎をしっかり理解しておくと後々とても楽になります。」

生徒:+演算子は分かりやすいですが、strings.Joinは配列と一緒に使えるのが便利ですね。」

先生:「その通りです。特に複数のデータをまとめて表示するときは、strings.Joinを知っているとコードがすっきりします。」

生徒:「これからは、場面に応じて使い分けるように意識してみます。」

先生:「それが大切です。まずは基本を身につけて、少しずつ実用的なコードを書けるようになっていきましょう。」

関連セミナーのご案内

【超入門】ゼロから始めるGo言語プログラミング:最速で「動くアプリ」を作るマンツーマン指導

「プログラミングの仕組み」が根本からわかる。Go言語でバックエンド開発の第一歩を。

本講座を受講することで、単なる文法の暗記ではなく、「プログラムがコンピュータの中でどう動いているか」という本質的な理解につながります。シンプルながら強力なGo言語(Golang)を通じて、現代のバックエンドエンジニアに求められる基礎体力を最短距離で身につけます。

具体的な開発内容と環境

【つくるもの】
ターミナル(黒い画面)上で動作する「対話型計算プログラム」や、データを整理して表示する「ミニ・ツール」をゼロから作成します。自分の書いたコードが形になる感動を体験してください。

【開発環境】
プロの現場でシェアNo.1のVisual Studio Code (VS Code)を使用します。インストールから日本語化、Go言語用の拡張機能設定まで、現場基準の環境を一緒に構築します。

この60分で得られる3つの理解

1. 環境構築の完全な理解

「なぜ動くのか」という設定の仕組みを理解し、今後の独学で詰まらない土台を作ります。

2. Go言語の基本構造(変数・型)

データの種類やメモリの概念など、他言語にも通じるプログラミングの本質を学びます。

3. 読みやすいコードの書き方

ただ動くだけでなく、誰が見ても分かりやすい「綺麗なコード」を書くための考え方を伝授します。

※本講座は、将来的にバックエンドエンジニアクラウドインフラに興味がある未経験者のためのエントリー講座です。マンツーマン形式により、あなたの理解度に合わせて進行します。

セミナー画像

初めてのGo言語を一緒に学びましょう!

カテゴリの一覧へ
新着記事
New1
Go言語
Go言語のwhile的なforループの使い方!条件式ループの基本を解説
New2
Go言語
Go言語プログラムの実行方法まとめ!VSCode・ターミナルでの実行手順を解説
New3
Swift
Swift意味とは?プログラミング言語・金融・鳥の違いを徹底解説
New4
Swift
Swift 戻り値の扱い方と複数戻り値の返し方|初心者でも分かる関数の基本
人気記事
No.1
Java&Spring記事人気No1
Go言語
Go言語でリダイレクト処理を行う方法(http.Redirect)を初心者向けに解説
No.2
Java&Spring記事人気No2
Swift
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.3
Java&Spring記事人気No3
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.4
Java&Spring記事人気No4
Kotlin
Gradleファイル(build.gradle.kts)の書き方と役割をやさしく解説!Kotlin初心者向け完全ガイド
No.5
Java&Spring記事人気No5
Go言語
Go言語のgo.modファイル完全ガイド!初心者でもわかる仕組みと書き方
No.6
Java&Spring記事人気No6
Swift
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.7
Java&Spring記事人気No7
Go言語
Go言語で条件式を1行で書くコツ!三項演算子の代替と短縮記法
No.8
Java&Spring記事人気No8
Kotlin
Kotlinの演算子一覧と使い方!算術・比較・論理演算子の基本を解説