Strings in Java
Strings are defined as an array of characters. The difference between a character array and a string is the string is terminated with a special character ‘\0’.
Below is the basic syntax for declaring a string in Java programming language.
Syntax:
<String_Type> <string_variable> = “<sequence_of_string>”;
Example:
String str = "Geeks";

Memory allotment of String
Whenever a String Object is created, two objects will be created- one in the Heap Area and one in the String constant pool and the String object reference always points to heap area object.
For example:
String str = "Geeks";

An Example that shows how to declare String
// Java code to illustrate String import java.io.*; import java.lang.*; class Test { public static void main(String[] args) { // Declare String without using new operator String s = "GeeksforGeeks"; // Prints the String. System.out.println("String s = " + s); // Declare String using new operator String s1 = new String("GeeksforGeeks"); // Prints the String. System.out.println("String s1 = " + s1); } } |
String s = GeeksforGeeks String s1 = GeeksforGeeks
Interfaces and Classes in Strings in Java
- CharBuffer: This class implements the CharSequence interface. This class is used to allow character buffers to be used in place of CharSequences. An example of such usage is the regular-expression package java.util.regex.
- String: String is a sequence of characters. In java, objects of String are immutable which means a constant and cannot be changed once created.
Creating a String
There are two ways to create string in Java:
- String literal
String s = “GeeksforGeeks”;
- Using new keyword
String s = new String (“GeeksforGeeks”);
- String literal
- StringBuffer: StringBuffer is a peer class of String that provides much of the functionality of strings. String represents fixed-length, immutable character sequences while StringBuffer represents growable and writable character sequences.
Syntax:
StringBuffer s = new StringBuffer("GeeksforGeeks"); - StringBuilder: The StringBuilder in Java represents a mutable sequence of characters. Since the String Class in Java creates and immutable sequence of characters, the StringBuilder class provides an alternate to String Class, as it creates a mutable sequence of characters.
Syntax:
StringBuilder str = new StringBuilder(); str.append("GFG"); - StringTokenizer: StringTokenizer class in Java is used to break a string into tokens.
Example:

A StringTokenizer object internally maintains a current position within the string to be tokenized. Some operations advance this current position past the characters processed.
A token is returned by taking a substring of the string that was used to create the StringTokenizer object. - StringJoiner: StringJoiner is a class in java.util package which is used to construct a sequence of characters(strings) separated by a delimiter and optionally starting with a supplied prefix and ending with a supplied suffix. Though this can also be with the help of StringBuilder class to append delimiter after each string, StringJoiner provides an easy way to do that without much code to write.
Syntax:
public StringJoiner(CharSequence delimiter)
Recommended Posts:
- Compare two Strings in Java
- Compare two strings lexicographically in Java
- Numbers in Java (With 0 Prefix and with Strings)
- How to Initialize and Compare Strings in Java?
- Printing Integer between Strings in Java
- Check whether two Strings are Anagram of each other using HashMap in Java
- Output of Java Programs | Set 52 (Strings Class)
- Swap two Strings without using third user defined variable in Java
- Find all palindromic sub-strings of a given string | Set 2
- Print all possible strings of length k that can be formed from a set of n characters
- Longest Common Substring in an Array of Strings
- Number of character corrections in the given strings to make them equal
- Java.util.LinkedList.poll(), pollFirst(), pollLast() with examples in Java
- Java.util.LinkedList.offer(), offerFirst(), offerLast() in Java
- Java.util.BitSet class methods in Java with Examples | Set 2
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



