「join」メソッドは遅いのか?などの基本的な内容から、応用的な方法についても解説していきます。まとめ「join」メソッドとは?それでは、まず最初に「join」メソッドの基本的な知識から身につけていきましょう!「join」メソッドは「Arrayオブジェクト」の組み込みメソッドとして標準で用意されており、配列の要素を繋げて文字列に変換することができる便利な機能が提供されています。これにより、配列データから特定の文字列を生成したり、置換メソッドと同等の機能を実現できたりします。「join」メソッドの使い方を学ぶために、まずは基本的な構文から見ていきましょう。);配列データに「join」メソッドを繋げるだけで、配列の各要素がすべて連結されて「文字列」として生成されるようになっています。「join」メソッドの引数に指定できる「separator」というのは、配列の各要素を繋げるときに任意の文字列を挿入できる仕組みになります。(これについては次の項目で解説します)文字列(String)に変換してみようそれでは、実際に「join」メソッドを使ってみましょう!次のサンプルを見てください。」で連結したものになっているわけです。配列の要素をそのまま連結したい場合は、引数に「空文字」を指定すればOKです。(カンマ)」を代入してあげれば良いだけです。」を代入するとそのまま各要素の間に挿入されるようになります。」なので、実は引数を省略することも可能です。);実行結果りんご,バナナ,いちご,メロンこのように、引数を省略すると自動的にカンマ区切りになるということも覚えておきましょう!「join」で改行する方法エスケープシーケンスの「/n」で区切る方法これまで、配列の各要素を連結した結果がいずれも1行の文字列になっていましたが、場合によっては要素毎に改行をして表示したいこともあるでしょう。そこで、「join」メソッドを使って改行を行う方法を解説します!まず、コンソール画面に出力する際の改行方法ですが、この場合はエスケープシーケンスの「/n」を活用することで改行を行うことができます。);実行結果りんごバナナいちごメロンこのように、引数へ「/n」を代入することで、各要素毎にエスケープシーケンスの効果が適用されるので、出力結果では改行されて表示することができるわけです。「/n」などのエスケープシーケンスについてはこちらの記事で解説しているので、ぜひ確認してください。改行タグの<br>で区切る方法Web上で改行するにはタグを使用します。次のサンプルは、連結した文字列をWeb上へ表示する例です。result;このサンプルのように、今度は改行タグである「<br>」を引数に代入することで、Webに表示される各要素を改行できるわけです。「join」メソッドは、今回ご紹介したサンプルのように、引数に何を代入するかによってさまざまなバリエーションの文字列を生成することが出来るので忘れないようにしましょう!「join」と「split」で置換してみよう!さて、「join」メソッドの便利な使い方を把握したところで、今度は応用技を学習していきましょう!利用するのは、文字列を分割して配列に変換してくれる「split」メソッドです。この「split」メソッドと、これまで学習してきた「join」メソッドを組み合わせると、なんと「置換」を行うことが出来るようになります。そこで、まずは「split」メソッドの機能を簡単にご紹介します。次のサンプルを見てください。"10"]「split」メソッドは、文字列内で分割したい箇所の文字を引数に指定することで、文字列を1つの要素として配列データに変換してくれます。ここで勘の良い人なら気付いているかもしれませんが、この生成された配列をさらに「join」で再び文字列に連結することができるわけですね。次のサンプルでは、新しい文字を引数に代入して「置換」を行っています。);実行結果2017-05-10もともとの文字列は「2017/05/10」でしたが、実行結果を見ると最終的に「2017-05-10」という形式に置換できているのが分かります。いう変換処理を組み合わせることで、まったく違うメソッドの使い方ができるというのは面白いですね。「join」メソッドは遅いのか?さて、ここまで「join」メソッドの基本から応用まで学習してきました。ここでは、さらに知識を深めるために、「join」メソッドの速度について解説しておきます。169.199msこの例では、文字連結を「join」「+」それぞれで10万回処理した時間を計測しています。実際には、このようなプログラミングをする機会はないと思いますが、処理にかかった時間で言うと「+」演算子の方が圧倒的に速いということが分かります。「join」メソッドが遅いからダメということではなく、配列に格納されている文字列を連結するにはやはり「join」メソッドを使うことになります。そのため、まずは「+」演算子による連結が可能かを検討しながらケース・バイ・ケースで活用していくのがベストでしょう。2019年4月20日まとめ今回は、配列の各要素を連結して文字列に変換できる「join」メソッドを学習しました!ここで、もう一度ポイントをおさらいしておきましょう!配列データに「join」を付与することで、各要素が連結されて文字列になる「join」の引数に区切り文字を指定することができる「join」の引数はデフォルトでカンマ区切りが設定されている「join」の引数に、「/n」や「<br>」などを使うことで改行ができる「split」メソッドを組み合わせると「置換」処理ができる文字連結の処理速度も意識しながらプログラムをしようこれらの内容を抑えながら、ぜひ自分のプログラムにも積極的に活用できるように挑戦してみてください!TweetPocket無料でSEからWebエンジニアへ転職しませんか?侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、システムエンジニアという職業だけどコードが書けない事務作業が多くスキルがないため将来が不安スクールに通うと完全未経験者と同じスタートになるからレベルが合わないという、すでに知識があるSEならではのお悩みがあることに気づきました。弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。こちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。無料体験レッスンを予約する書いた人マサトフリーランスのIT系ライターを8年従事。侍ブログ編集部としては、これまで270記事以上の記事を執筆。Linuxを3年学習。個人プロダクトのWebメディア・アプリ作成経験あり。