【Swift入門】printを使ってコンソールに出力する方法

こんにちは!フリーエンジニアのヤマシタです。

プログラミングにおいて、ちょっとした動作を確認したいときや、単体テストでデバッグを行うときにコンソールに実行結果を出力することはよくあります。

この記事ではコンソールに文字列を出力する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の使い方を忘れてしまったら、この記事を思い出してくださいね!

Writer

侍テック編集部

株式会社SAMURAI

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。侍テック編集部では技術系コンテンツを中心に有用な情報を発信していきます。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI ENGINEER Plus

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら