Java Escape characters list
In this post, we feature a comprehensive article about escaping characters in Java. Why do we use Java Escape characters list so-called Sequence character?
1. Introduction
Consider an example where I want to print the following message: My favorite movie is “Avengers”
Let’s try to write the code to print this string.
MyFavoriteMovieExample .java
public class MyFavoriteMovieExample { public static void main(String[] args) { String myFavoriteMovie = new String("My favorite movie is "Avengers"."); System.out.println(myFavoriteMovie); } }
The compiler doesn’t let us run this code and It shows us syntax error. The reason is, it is unable to interpret the Double Quote "
correctly. Usually for compiler "
specify either the start or end of the string but what if we want it to be a part of a string, we must need something to differentiate "
symbol to interpret differently in some scenario. There escape character comes into the picture. By prefixing backslash \
before the "
,the compiler treats the symbol as a part of the string and not start or end of the string.
Let’s fix the error here.
MyFavoriteMovieExample .java
1 2 3 4 5 6 | public class MyFavoriteMovieExample { public static void main(String[] args) { String myFavoriteMovie = new String( "My favorite movie is \"Avengers\"." ); System.out.println(myFavoriteMovie); } } |
Output
1 | My favorite movie is "Avengers" . |
After executing this code our desired string is printed on the console.
Although there is an alternate way to get the same output but it doesn’t mean we can write alternative for all the other special characters.
Here is an example to get the same output without using escape character.
MyFavoriteMovieExample .java
public class MyFavoriteMovieExample{ public static void main(String[] args) { String myFavoriteMovie = "My favorite movie is " + '"' + "Avengers" + '"' + "."; System.out.println(myFavoriteMovie); } }
It will give us the same output.
2. Different types of escape characters
\f
: for inserting a formfeed.\'
: for inserting a quote character.\"
: for inserting a double quote character.\\
: for inserting a backslash character.\t
: for inserting a tab.\b
: for inserting a backspace.\n
: for inserting a newline.\r
: for inserting a carriage return.
let’s see the use case for each escape character:
EscapeCharacterExample.java
public class EscapeCharacterExample { public static void main(String[] args) { // \t tab printEscapeCharacterWithExample("tab : \\t", '\t'); // \b backspace printEscapeCharacterWithExample("backspace : \\b", '\b'); // \n new line printEscapeCharacterWithExample("new line : \\n", '\n'); // \r carriage return printEscapeCharacterWithExample("carriage return : \\r", '\r'); // \f form feed printEscapeCharacterWithExample("form feed : \\f", '\f'); // \' single quote printEscapeCharacterWithExample("single qoute : \\'", '\''); // \" double quote printEscapeCharacterWithExample("double quote : \"", '\"'); // \\ backslash printEscapeCharacterWithExample("backslash : \\", '\\'); } static void printEscapeCharacterWithExample(String escapeCharacterString, char escapeCharacter) { String preText = "Pre Text"; String middleText = "Middle Text"; String postText = "Post Text"; System.out.println(escapeCharacterString); System.out.println(preText + escapeCharacter + middleText + escapeCharacter + postText); System.out.println(); } }
Output
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | tab : \t Pre Text Middle Text Post Text backspace : \b Pre TexMiddle TexPost Text new line : \n Pre Text Middle Text Post Text carriage return : \r Post Textxt form feed : \f Pre Text Middle Text Post Text single qoute : \' Pre Text 'Middle Text' Post Text double quote : " Pre Text "Middle Text" Post Text backslash : \ Pre Text\Middle Text\Post Text |
3. Unicode Escape Characters
Java support Unicode escape characters which are basically the representation of almost all the different language characters using only ASCII characters.
A Unicode escape representation consist of a backslash character /
followed by one or more u
characters and four hexadecimal digits. While interpreting the string if compiler finds something in the Unicode representation, compiler replace it with respective symbol according to the Java specification .
UnicodeExample.java
1 2 3 4 5 6 7 | public class UnicodeExample { public static void main(String[] args) { System.out.println( "\u0929\u092E\u0938\u094D\u0924\u0947" ); } } |
Output
1 | ऩमस्ते |
The above program will print ऩमस्ते
which is a Hindi word and we can’t write those symbols with a normal qwerty keyboard so we require Unicode characters to represent those symbols.
This was an article about escaping characters in Java.
4. Download the source code
You can download the source code of this example here: Java Escape characters list