Javaのエスケープシーケンスをマスターしよう!表示のズレに困ったらこれ!
こんにちは。ゆうせいです。
今回は、Javaで文字列を画面に表示するときに役立つ「エスケープシーケンス」について、初心者向けにやさしく解説します。
「Hello
とWorld
の間に改行を入れたい」
そんなとき、どう書いたらいいと思いますか?
エスケープシーケンスとは何か?
「逃がす」ってどういうこと?
**エスケープシーケンス(escape sequence)**とは、
**通常とは違う意味で文字を使いたいときの“特別な記号”**です。
キーワードは「逃がす」です。
本来はただの文字として処理されるものに、特別な意味を与えるために使われます。
例えば "Hello\nWorld"
の \n
。
この「\n
」がエスケープシーケンスで、改行を意味するんです。
例:改行を入れたいとき
public class Example12 {
public static void main(String[] args) {
System.out.println("Hello\nWorld");
}
}
実行結果
Hello
World
このように、「Hello」と「World」の間に改行が入るわけです!
よく使うエスケープシーケンス一覧
エスケープシーケンス | 意味 | 出力例 |
---|---|---|
\n | 改行 | 改行して次の行に移動 |
\t | 水平タブ(空白) | 表示位置が右にずれる |
\' | シングルクォート | ' を文字列の中で使える |
\" | ダブルクォート | " を文字列の中で使える |
\\ | バックスラッシュ | \ を表示できる |
どれも「バックスラッシュ(
\
)」から始まるのが特徴です!
日本のWindows環境では「\」が「¥」に見える?
そうなんです。混乱の元ですが、フォントと環境の違いによって見た目が変わります。
なぜ「¥」に見えるのか?
- 日本語Windowsでは、「
\
(バックスラッシュ)」が「¥
(円記号)」で表示される - これはMS-DOS時代からの仕様の名残
- 内部的には同じ文字(Unicode:U+005C)ですが、見た目だけ違うのです!
「ろ」キーで打つあの文字が、Javaでは
\
なんですよ!
サンプル:ダブルクォートを表示したい
public class Example13 {
public static void main(String[] args) {
String str1 = "\"special\"price:";
System.out.print(str1);
}
}
実行結果
"special"price:
普通に
"special"
と書くと、文法エラーになりますが、エスケープすればOK!
エスケープシーケンスを使う場面とは?
よくあるシーン
- 改行を入れたい(
\n
) - スペースを揃えたい(
\t
) - クォート記号を表示したい(
\"
や\'
) - 文字列中に「\」を表示したい(
\\
)
よくある間違い
System.out.println("これは間違い"です"); // NG
System.out.println("これは\"正しい\"です"); // OK
覚え方のコツ
エスケープシーケンス | 覚え方のヒント |
---|---|
\n | n = newline(改行) |
\t | t = tab(タブ) |
\" | クォートの表示には \ が必要 |
\\ | \ をもう一度書く必要がある |
まとめ:エスケープシーケンスは表示のコントロール装置!
エスケープシーケンスは、見た目や出力の細かな制御を可能にする便利な道具です。
Javaで出力がうまくいかないときは、「表示されない制御文字が原因かも?」と疑ってみましょう。
今後の学習の指針
次に学ぶとよいテーマとしては、
- 文字列の結合と整形
- printfやformatによる出力のフォーマット
- 正規表現(エスケープシーケンスを多用します!)
表示トラブルに強いエンジニアになるためには、見えない文字の動きを理解することが近道です!
ぜひ、サンプルコードをいろいろ書き換えて、表示の変化を試してみてください!
セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク
投稿者プロフィール

- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
最新の投稿
山崎講師2025年6月7日参照型の配列とNullPointerException
山崎講師2025年6月7日Javaでchar型は実は整数!?文字コードの正体に迫る!
山崎講師2025年6月7日Javaのエスケープシーケンスをマスターしよう!表示のズレに困ったらこれ!
山崎講師2025年6月7日Javaの「文字」と「文字列」の違いをやさしく解説!混同に注意!