こんにちは!フリーエンジニアのヤマシタです。
プログラミングにおいて、ちょっとした動作を確認したいときや、単体テストでデバッグを行うときにコンソールに実行結果を出力することはよくあります。
この記事ではコンソールに文字列を出力するprintについて、
・printとは?
・変数を出力する方法
というprintの基本的な解説から、
・特殊文字を出力する方法
・改行しないで出力する方法
・複数の文字列をスペースで区切る方法
などの応用的な使い方に関しても解説していきます。
今回はそんなprintの使い方についてわかりやすく解説します!
※この記事ではSwift3.1を使用しています。
printとは
printは主に文字列の出力や変数の中身などを、コンソールに出力して確認したいときに使用します。
printはソースコード上のどこでも記述することができて、値のデバッグや各関数の始まりや終わりに記述してプログラムの動作を確認するときなど、さまざまな用途で使用できます。
書き方:
print("hello world"); //hello world print("samurai,"); // samurai, print("engineer"); // engineer print(1); // 1
printはデフォルトで改行されます。
Swift2以前はprintlnを使用していましたが、printlnは現在のバージョン(3.1)では廃止されています。
printの使い方
変数の出力
変数を出力するには、printの引数に変数を指定することで変数の中身が確認できます。
「print(変数名 = 文字列変数)」のように文字列と文字列変数を組み合わせてprintで出力したい場合は、
文字列と変数の間に+(プラス)記号を使うか、\()エスケープシーケンスを使う方法があります。
+(プラス)記号は文字列以外の変数では使用できませんので注意しましょう。
以下にさまざまな変数を出力するサンプルを紹介します。
変数の出力:
//string let str = "Samurai Engineer" print(str); // Samurai Engineer print("str : " + str) // str : Samurai Engineer print("str : \(str)") // str : Samurai Engineer //int let nVal = 100 //print("nVal : " + nVal) //エラー:文字列と数値型変数の結合はできない print("nVal : \(nVal)") //nVal : 100 //double let dVal = 100.1234 print("dVal : \(dVal)") //dVal : 100.1234 //bool let bVal1 = true let bVal2 = false print("bVal1 : \(bVal1)") // bVal1 : true print("bVal2 : \(bVal2)") // bVal2 : false
実行結果:
Samurai Engineer str : Samurai Engineer str : Samurai Engineer nVal : 100 dVal : 100.1234 bVal1 : true bVal2 : false
特殊文字
printlnは改行やタブなどの特殊文字を使用することもできます。
以下に特殊文字を使用した出力方法を紹介します。
特殊文字:
//改行(\n) print("Samurai, \nEngineer") // Samurai // Engineer //タブスペース(\t) print("Samurai,\tEngineer") // Samurai, Engineer //バックスラッシュ(\\) print(" \\ Samurai, Engineer \\ ") // \ Samurai, Engineer \ //ダブルクォーテーション(\") print(" \" Samurai, Engineer \" ") // " Samurai, Engineer " //シングルクォーテーション(\') print(" \' Samurai, Engineer \' ") // ' Samurai, Engineer '
実行結果:
Samurai, Engineer Samurai, Engineer \ Samurai, Engineer \ " Samurai, Engineer " ' Samurai, Engineer '
改行しないで出力
printはデフォルトでは文字列を出力したあとに改行されてしまいますが、printを改行したくない場合は、
引数にterminatorを指定し、空文字(“”)を渡します。
以下に改行しないで出力するサンプルを紹介します。
改行なし:
print("Samurai ", terminator: "") // Samurai Engineer print("Engineer") let num = 100 print("num = ", terminator: ""); //num = 100 print(num);
実行結果:
Samurai Engineer num = 100
複数の文字列をスペースで区切る
複数の文字列をスペースで区切って出力した場合はseparatorを指定し、スペース(” “)を渡します。
以下に文字列をスペースで区切って出力するサンプルを紹介します。
スペースで区切る:
//スペースで区切る print("Samurai", "Engineer", "Blog", separator: " ") // Samurai Engineer Blog let num = 100 print("num =", num, separator: " "); // num = 100
実行結果:
Samurai Engineer Blog num = 100
まとめ
ここではSwiftでコンソールに出力するprintに関して、
・printとは?
・変数を出力する方法
・特殊文字を出力する方法
・改行しないで出力する方法
・複数の文字列をスペースで区切る方法
などについて解説しました。
printはデバッグで変数の値や戻り値を確認したいときや、関数の始まりや終わりなどをプログラムを通しでテストするときなどによく使用します。
そのため、printの使い方についてはよく覚えておきましょう。
もし、printの使い方を忘れてしまったら、この記事を思い出してくださいね!