String Class in Java
String Class in Java with Example
In Java, String is a class data type that represents a sequence of characters. It is one of the most used data types in Java. Sequence of characters is enclosed in double quotes to make a string. Strings can be created using three classes in Java -> String, StringBuffer and StringBuilder classess. This tutorial deals with String class only which creates immutable strings. Strings created by the String class cannot be changed. If manipulation is done on a string, then the resulting string is a different object than the one on which modifications were performed. An example of how a string looks like in a Java program is given below.
Example:
String = “Study Experts“;
Creating Strings in Java
In Java, strings can be created in two ways which are:
-
- By string literal
- By new operator
By string literal
String literals are created using double quotes (“”). Creating strings through string literals includes the involvement of Java Virtual Machine(JVM). When you create a string, JVM checks the “string pool first” to see if it exists in the pool. If it does, then reference to it is returned. Otherwise, a new string instance is created and placed in the pool.
String str="Welcome to StudyExperts.";
By new operator
Strings created using new operations are placed in the normal (non-pool) heap memory.
String str=new String("Welcome to Study Experts.");
String Class Methods in Java
String Class has a number of methods that are used to perform the comparison, concatenation, and other operations on strings which are provided below.
Method | Description |
char charAt(int index) |
Returns the character at the specified index. |
int compareTo(Object obj) |
Compares this String to another Object. |
int compareTo(String anotherString) |
Compares two strings lexicographically. |
int compareToIgnoreCase(String str) |
Compares two strings lexicographically, ignoring case differences. |
String concat(String str) |
Concatenates the specified string to the end of this string. |
boolean contentEquals(StringBuffer sb) |
Returns true if and only if this String represents the same sequence of characters as the specified StringBuffer. |
static String copyValueOf(char[] data) |
Returns a String that represents the character sequence in the array specified. |
static String copyValueOf(char[] data, int offset, int count) |
Returns a String that represents the character sequence in the array specified. |
boolean endsWith(String suffix) |
Tests if this string ends with the specified suffix. |
boolean equals(Object anObject) |
Compares this string to the specified object. |
boolean equalsIgnoreCase(String anotherString) |
Compares this String to another String, ignoring case considerations. |
byte[] getBytes() |
Encodes this String into a sequence of bytes using the platform’s default charset, storing the result into a new byte array. |
byte[] getBytes(String charsetName) |
Encodes this String into a sequence of bytes using the named charset, storing the result into a new byte array. |
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) |
Copies characters from this string into the destination character array. |
int hashCode() |
Returns a hash code for this string. |
int indexOf(int ch) | Returns the index within this string of the first occurrence of the specified character. |
int indexOf(int ch, int fromIndex) | Returns the index within this string of the first occurrence of the specified character, starting the search at the specified index. |
int indexOf(String str) | Returns the index within this string of the first occurrence of the specified substring. |
int indexOf(String str, int fromIndex) | Returns the index within this string of the first occurrence of the specified substring, starting at the specified index. |
String intern() | Returns a canonical representation for the string object. |
int lastIndexOf(int ch) | Returns the index within this string of the last occurrence of the specified character. |
int lastIndexOf(int ch, int fromIndex) | Returns the index within this string of the last occurrence of the specified character, searching backward starting at the specified index. |
int lastIndexOf(String str) | Returns the index within this string of the rightmost occurrence of the specified substring. |
int lastIndexOf(String str, int fromIndex) | Returns the index within this string of the last occurrence of the specified substring, searching backward starting at the specified index. |
int length() | Returns the length of this string. |
boolean matches(String regex) | Tells whether or not this string matches the given regular expression. |
boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len) | Tests if two string regions are equal. |
boolean regionMatches(int toffset, String other, int ooffset, int len) | Tests if two string regions are equal. |
String replace(char oldChar, char newChar) | Returns a new string resulting from replacing all occurrences of oldChar in this string with newChar. |
String replaceAll(String regex, String replacement | Replaces each substring of this string that matches the given regular expression with the given replacement. |
String replaceFirst(String regex, String replacement) | Replaces the first substring of this string that matches the given regular expression with the given replacement. |
String[] split(String regex) | Splits this string around matches of the given regular expression. |
String[] split(String regex, int limit) | Splits this string around matches of the given regular expression. |
boolean startsWith(String prefix) | Tests if this string starts with the specified prefix. |
boolean startsWith(String prefix, int toffset) | Tests if this string starts with the specified prefix beginning a specified index. |
CharSequence subSequence(int beginIndex, int endIndex) | Returns a new character sequence that is a subsequence of this sequence. |
String substring(int beginIndex) | Returns a new string that is a substring of this string. |
String substring(int beginIndex, int endIndex) | Returns a new string that is a substring of this string. |
char[] toCharArray() | Converts this string to a new character array. |
String toLowerCase() | Converts all of the characters in this String to lower case using the rules of the default locale. |
String toLowerCase(Locale locale) | Converts all of the characters in this String to lower case using the rules of the given Locale. |
String toString() | This object (which is already a string!) is itself returned. |
String toUpperCase() | Converts all of the characters in this String to upper case using the rules of the default locale. |
String toUpperCase(Locale locale) | Converts all of the characters in this String to upper case using the rules of the given Locale. |
String trim() | Returns a copy of the string, with leading and trailing whitespace omitted. |
static String valueOf(primitive data type x) | Returns the string representation of the passed data type argument. |
Also read, Variables in Java Programming.