Immutable Strings in Java

Immutable Strings in Java


Immutable Strings In Java Notes

The String class represents character strings. All string literals in Java programs, such as "abc", are implemented as instances of this class.

Strings are constant; their values cannot be changed after they are created. Because String objects are immutable they can be shared. String buffers support mutable strings.

For example:

 String str = "abc";  is equivalent to:

 char data[] = {'a', 'b', 'c'};
 String str = new String(data);

Here are some more examples of how strings can be used:

 System.out.println("abc");
 String cde = "cde";
 System.out.println("abc" + cde);
 String c = "abc".substring(2,3);
 String d = cde.substring(1, 2);

The class String includes methods for examining individual characters of the sequence, for comparing strings, for searching strings, for extracting substring, and for creating a copy of a string with all characters translated to uppercase or to lowercase. These methods used for manipulating strings are known as accessor methods.

The Java language provides special support for the string concatenation operator ( + ), and for conversion of other objects to strings. String concatenation is implemented through the StringBuffer class and its append method.

String conversions are implemented through the method toString(), defined by Object and inherited by all classes in Java.