The String and StringBuffer Classes |
Theclass ReverseString { public static String reverseIt(String source) { int i, len = source.length(); StringBuffer dest = new StringBuffer(len); for (i = (len - 1); i >= 0; i--) { dest.append(source.charAt(i)); } return dest.toString(); } }reverseIt()
method above creates a StringBuffer nameddest
whose initial length is the same assource
.StringBuffer dest
declares to the compiler thatdest
will be used to refer to an object whose type is StringBuffer, thenew
operator allocates memory for a new object, andStringBuffer(len)
initializes the object. These three steps--declaration, instantiation, and initialization--are described in Creating Objects.Creating a String
Many Strings are created from string literals. When the compiler encounters a series of characers between double quote " and ", it creates a String object whose value is the text that appeared between the quotes. When the compiler encounters the following string literal it creates a String object whose value isGobbledy gook.
You can also create String objects like you would any other Java object: using"Gobbledy gook."new
.new String("Gobbledy gook.");Creating a StringBuffer
The constructor method used byreverseIt()
to initialize thedest
requires an integer argument indicating the initial size of the new StringBuffer.StringBuffer(int length)reverseIt()
could have used StringBuffer's default constructor that leaves the buffer's length undetermined until a later time. However, it's more efficient to specify the length of the buffer if you know it, instead of allocating more memory every time you append a character to the buffer.See Also
java.lang.String--Constructors
java.lang.StringBuffer--Constructors
The String and StringBuffer Classes |