Chapter: Java The Complete Reference - The Java Language - A Closer Look at Methods and Classes

| Study Material, Lecturing Notes, Assignment, Reference, Wiki description explanation, brief detail |

Exploring the String Class - Java

Although the String class will be examined in depth in Part II of this book, a short exploration of it is warranted now, because we will be using strings in some of the example programs shown toward the end of Part I. String is probably the most commonly used class in Java’s class library.

Exploring the String Class

 

Although the String class will be examined in depth in Part II of this book, a short exploration of it is warranted now, because we will be using strings in some of the example programs shown toward the end of Part I. String is probably the most commonly used class in Java’s class library. The obvious reason for this is that strings are a very important part of programming.

 

The first thing to understand about strings is that every string you create is actually an object of type String. Even string constants are actually String objects. For example, in the statement

 

 

System.out.println("This is a String, too");

 

the string "This is a String, too" is a String object.

 

The second thing to understand about strings is that objects of type String are immutable; once a String object is created, its contents cannot be altered. While this may seem like a serious restriction, it is not, for two reasons:

 

        If you need to change a string, you can always create a new one that contains the modifications.

 

        Java defines peer classes of String, called StringBuffer and StringBuilder, which allow strings to be altered, so all of the normal string manipulations are still available in Java. (StringBuffer and StringBuilder are described in Part II of this book.)

 

Strings can be constructed in a variety of ways. The easiest is to use a statement like this:

 

String myString = "this is a test";

 

Once you have created a String object, you can use it anywhere that a string is allowed. For example, this statement displays myString:

 

System.out.println(myString);

 

Java defines one operator for String objects: +. It is used to concatenate two strings. For example, this statement

 

String myString = "I" + " like " + "Java.";

 

results in myString containing "I like Java."

 

The following program demonstrates the preceding concepts:

 

// Demonstrating Strings. 


class StringDemo {

 

public static void main(String args[]) { String strOb1 = "First String";

 

String strOb2 = "Second String";

String strOb3 = strOb1 + " and " + strOb2; System.out.println(strOb1);

System.out.println(strOb2);

 

System.out.println(strOb3);

 

}

 

}

The output produced by this program is shown here:

 

First String

 

Second String

 

First String and Second String

The String class contains several methods that you can use. Here are a few. You can test two strings for equality by using equals( ). You can obtain the length of a string by calling the length( ) method. You can obtain the character at a specified index within a string by calling charAt( ). The general forms of these three methods are shown here:

 

boolean equals(secondStr) int length( )

char charAt(index)

 

Here is a program that demonstrates these methods:

 

// Demonstrating some String methods. 


class StringDemo2 {

 

public static void main(String args[]) { String strOb1 = "First String";

 

String strOb2 = "Second String"; String strOb3 = strOb1;

 

System.out.println("Length of strOb1: " + strOb1.length());

 

System.out.println("Char at index 3 in strOb1: " + strOb1.charAt(3));

 

if(strOb1.equals(strOb2)) System.out.println("strOb1 == strOb2");

 

else

 

System.out.println("strOb1 != strOb2");

 

if(strOb1.equals(strOb3)) System.out.println("strOb1 == strOb3");

 

else

 

System.out.println("strOb1 != strOb3");

 

}

 

}

 

This program generates the following output:

 

Length of strOb1: 12

 

Char at index 3 in strOb1: s strOb1 != strOb2

 

strOb1 == strOb3

Of course, you can have arrays of strings, just like you can have arrays of any other type of object. For example:

 

// Demonstrate String arrays. 


class StringDemo3 {

 

public static void main(String args[]) { String str[] = { "one", "two", "three" };

 

for(int i=0; i<str.length; i++) System.out.println("str[" + i + "]: " +

 

str[i]);

 

}

 

}

 

Here is the output from this program:

 

str[0]: one str[1]: 

two str[2]: three

 

As you will see in the following section, string arrays play an important part in many Java programs.


Study Material, Lecturing Notes, Assignment, Reference, Wiki description explanation, brief detail


Copyright © 2018-2020 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.