SlideShare a Scribd company logo
Programming in Java
Lecture 12: String Handling
By
Ravi Kant Sahu
Asst. Professor
Lovely Professional University, PunjabLovely Professional University, Punjab
Introduction
 Every string we create is actually an object of type String.
 String constants are actually String objects.
 Example:
System.out.println("This is a String, too");
 Objects of type String are immutable i.e. once a String object
is created, its contents cannot be altered.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String
Constant
Why String is Immutable or Final?
 String has been widely used as parameter for many java classes e.g.
for opening network connection we can pass hostname and port
number as string ,
 we can pass database URL as string for opening database
connection,
 we can open any file in Java by passing name of file as argument to
File I/O classes.
 In case if String is not immutable , this would lead serious security
threat , means some one can access to any file for which he has
authorization and then can change the file name either deliberately
or accidentally and gain access of those file.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Introduction
 In java, four predefined classes are provided that either
represent strings or provide functionality to manipulate them.
Those classes are:
◦ String
◦ StringBuffer
◦ StringBuilder
◦ StringTokenizer
 String, StringBuffer, and StringBuilder classes are defined in
java.lang package and all are final.
 All three implement the CharSequence interface.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Why String Handling?
String handling is required to perform following operations
on some string:
 compare two strings
 search for a substring
 concatenate two strings
 change the case of letters within a string
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Creating String objects
class StringDemo
{
public static void main(String args[])
{
String strOb1 = “Ravi";
String strOb2 = “LPU";
String strOb3 = strOb1 + " and " + strOb2;
System.out.println(strOb1);
System.out.println(strOb2);
System.out.println(strOb3);
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String Class
String Constructor:
public String ()
public String (String)
public String (char [])
public String (byte [])
public String (char [], int offset, int no_of_chars)
public String (byte [], int offset, int no_of _bytes)
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Examples
char [] a = {'c', 'o', 'n', 'g', 'r', 'a', 't', 's'};
byte [] b = {82, 65, 86, 73, 75, 65, 78, 84};
String s1 = new String (a); System.out.println(s1);
String s2 = new String (a, 1,5); System.out.println(s2);
String s3 = new String (s1); System.out.println(s3);
String s4 = new String (b); System.out.println(s4);
String s5 = new String (b, 4, 4); System.out.println(s5);
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String Concatenation
 Concatenating Strings:
String age = "9";
String s = "He is " + age + " years old.";
System.out.println(s);
 Using concatenation to prevent long lines:
String longStr = “This could have been” +
“a very long line that would have” +
“wrapped around. But string”+
“concatenation prevents this.”;
System.out.println(longStr);
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String Concatenation with Other Data Types
 We can concatenate strings with other types of data.
Example:
int age = 9;
String s = "He is " + age + " years old.";
System.out.println(s);
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Methods of String class
 String Length:
length() returns the length of the string i.e. number of
characters.
int length()
Example:
char chars[] = { 'a', 'b', 'c' };
String s = new String(chars);
System.out.println(s.length());
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Character Extraction
 charAt(): used to obtain the character from the specified index
from a string.
public char charAt (int index);
Example:
char ch;
ch = "abc".charAt(1);
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Methods Cont…
 getChars(): used to obtain set of characters from the string.
public void getChars(int start_index, int end_index, char[], int
offset)
Example: String s = “KAMAL”;
char b[] = new char [10];
b[0] = ‘N’; b[1] = ‘E’;
b[2] = ‘E’; b[3] = ‘L’;
s.getChars(0, 4, b, 4);
System.out.println(b);
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Methods Cont…
 toCharArray(): returns a character array initialized by the
contents of the string.
public char [] toChar Array();
Example: String s = “India”;
char c[] = s.toCharArray();
for (int i=0; i<c.length; i++)
{
if (c[i]>= 65 && c[i]<=90)
c[i] += 32;
System.out.print(c[i]);
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String Comparison
 equals(): used to compare two strings for equality.
Comparison is case-sensitive.
public boolean equals (Object str)
 equalsIgnoreCase( ): To perform a comparison that ignores case
differences.
Note:
 This method is defined in Object class and overridden in String class.
 equals(), in Object class, compares the value of reference not the content.
 In String class, equals method is overridden for content-wise comparison
of two strings.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Example
class equalsDemo {
public static void main(String args[]) {
String s1 = "Hello";
String s2 = "Hello";
String s3 = "Good-bye";
String s4 = "HELLO";
System.out.println(s1 + " equals " + s2 + " -> " +
s1.equals(s2));
System.out.println(s1 + " equals " + s3 + " -> " +
s1.equals(s3));
System.out.println(s1 + " equals " + s4 + " -> " +
s1.equals(s4));
System.out.println(s1 + " equalsIgnoreCase " + s4 + " -> “
+s1.equalsIgnoreCase(s4));
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String Comparison
 startsWith( ) and endsWith( ):
◦ The startsWith( ) method determines whether a given String
begins with a specified string.
◦ Conversely, endsWith( ) determines whether the String in
question ends with a specified string.
boolean startsWith(String str)
boolean endsWith(String str)
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
String Comparison
compareTo( ):
 A string is less than another if it comes before the other in
dictionary order.
 A string is greater than another if it comes after the other in
dictionary order.
int compareTo(String str)
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Example
class SortString {
static String arr[] = {"Now", "is", "the", "time", "for", "all", "good", "men",
"to", "come", "to", "the", "aid", "of", "their", "country"};
public static void main(String args[]) {
for(int j = 0; j < arr.length; j++) {
for(int i = j + 1; i < arr.length; i++) {
if(arr[i].compareTo(arr[j]) < 0) {
String t = arr[j];
arr[j] = arr[i];
arr[i] = t;
}
}
System.out.println(arr[j]);
}
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Searching Strings
 The String class provides two methods that allow us to search a
string for a specified character or substring:
indexOf( ): Searches for the first occurrence of a character or
substring.
int indexOf(int ch)
lastIndexOf( ): Searches for the last occurrence of a character or
substring.
int lastIndexOf(int ch)
 To search for the first or last occurrence of a substring, use
int indexOf(String str)
int lastIndexOf(String str)
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
 We can specify a starting point for the search using these forms:
int indexOf(int ch, int startIndex)
int lastIndexOf(int ch, int startIndex)
int indexOf(String str, int startIndex)
int lastIndexOf(String str, int startIndex)
 Here, startIndex specifies the index at which point the search
begins.
 For indexOf( ), the search runs from startIndex to the end of the
string.
 For lastIndexOf( ), the search runs from startIndex to zero.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Example
class indexOfDemo {
public static void main(String args[]) {
String s = "Now is the time for all good men " +
"to come to the aid of their country.";
System.out.println(s);
System.out.println("indexOf(t) = " + s.indexOf('t'));
System.out.println("lastIndexOf(t) = " + s.lastIndexOf('t'));
System.out.println("indexOf(the) = " + s.indexOf("the"));
System.out.println("lastIndexOf(the) = " + s.lastIndexOf("the"));
System.out.println("indexOf(t, 10) = " + s.indexOf('t', 10));
System.out.println("lastIndexOf(t, 60) = " + s.lastIndexOf('t', 60));
System.out.println("indexOf(the, 10) = " + s.indexOf("the", 10));
System.out.println("lastIndexOf(the, 60) = " + s.lastIndexOf("the", 60));
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Modifying a String
 Because String objects are immutable, whenever we want to modify a
String, it will construct a new copy of the string with modifications.
 substring(): used to extract a part of a string.
public String substring (int start_index)
public String substring (int start_index, int end_index)
Example: String s = “ABCDEFG”;
String t = s.substring(2); System.out.println (t);
String u = s.substring (1, 4); System.out.println (u);
Note: Substring from start_index to end_index-1 will be returned.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
concat( ): used to concatenate two strings.
String concat(String str)
 This method creates a new object that contains the invoking string
with the contents of str appended to the end.
 concat( ) performs the same function as +.
Example:
String s1 = "one"; String s2 = s1.concat("two");
 It generates the same result as the following sequence:
String s1 = "one"; String s2 = s1 + "two";
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
replace( ): The replace( ) method has two forms.
 The first replaces all occurrences of one character in the invoking
string with another character. It has the following general form:
String replace(char original, char replacement)
 Here, original specifies the character to be replaced by the character
specified by replacement.
Example: String s = "Hello".replace('l', 'w');
 The second form of replace( ) replaces one character sequence with
another. It has this general form:
String replace(CharSequence original, CharSequence
replacement)
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
trim( )
 The trim( ) method returns a copy of the invoking string from which
any leading and trailing whitespace has been removed.
String trim( )
Example:
String s = " Hello World ".trim();
This puts the string “Hello World” into s.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
Changing the Case of Characters Within a String
toLowerCase() & toUpperCase()
 Both methods return a String object that contains the
uppercase or lowercase equivalent of the invoking String.
String toLowerCase( )
String toUpperCase( )
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)

More Related Content

PDF
String handling(string buffer class)
Ravi Kant Sahu
 
PPT
String handling session 5
Raja Sekhar
 
PPTX
Java String
SATYAM SHRIVASTAV
 
PDF
Wrapper classes
Ravi_Kant_Sahu
 
PPTX
String, string builder, string buffer
SSN College of Engineering, Kalavakkam
 
PPS
String and string buffer
kamal kotecha
 
PDF
Java - Strings Concepts
Victer Paul
 
PPTX
L13 string handling(string class)
teach4uin
 
String handling(string buffer class)
Ravi Kant Sahu
 
String handling session 5
Raja Sekhar
 
Java String
SATYAM SHRIVASTAV
 
Wrapper classes
Ravi_Kant_Sahu
 
String, string builder, string buffer
SSN College of Engineering, Kalavakkam
 
String and string buffer
kamal kotecha
 
Java - Strings Concepts
Victer Paul
 
L13 string handling(string class)
teach4uin
 

What's hot (20)

PPT
Strings
naslin prestilda
 
PPT
Chapter 7 String
OUM SAOKOSAL
 
PDF
Java String
Java2Blog
 
PDF
Java Strings Tutorial | String Manipulation in Java | Java Tutorial For Begin...
Edureka!
 
PPTX
String Builder & String Buffer (Java Programming)
Anwar Hasan Shuvo
 
PPTX
String in java
Ideal Eyes Business College
 
PPTX
L14 string handling(string buffer class)
teach4uin
 
PDF
Generics
Ravi_Kant_Sahu
 
PPT
Wrapper class (130240116056)
Akshay soni
 
PPTX
Autoboxing And Unboxing In Java
chathuranga kasun bamunusingha
 
DOCX
Fundamental classes in java
Garuda Trainings
 
PPTX
L9 wrapper classes
teach4uin
 
PDF
Lecture 7
Debasish Pratihari
 
PPT
Chapter 9 - Characters and Strings
Eduardo Bergavera
 
PDF
Farhaan Ahmed, BCA 2nd Year
dezyneecole
 
PPTX
OCA Java SE 8 Exam Chapter 3 Core Java APIs
İbrahim Kürce
 
PPS
Wrapper class
kamal kotecha
 
PDF
Java Wrapper Classes and I/O Mechanisms
Subhadra Sundar Chakraborty
 
DOCX
Autoboxing and unboxing
Geetha Manohar
 
PPT
wrapper classes
Rajesh Roky
 
Chapter 7 String
OUM SAOKOSAL
 
Java String
Java2Blog
 
Java Strings Tutorial | String Manipulation in Java | Java Tutorial For Begin...
Edureka!
 
String Builder & String Buffer (Java Programming)
Anwar Hasan Shuvo
 
L14 string handling(string buffer class)
teach4uin
 
Generics
Ravi_Kant_Sahu
 
Wrapper class (130240116056)
Akshay soni
 
Autoboxing And Unboxing In Java
chathuranga kasun bamunusingha
 
Fundamental classes in java
Garuda Trainings
 
L9 wrapper classes
teach4uin
 
Chapter 9 - Characters and Strings
Eduardo Bergavera
 
Farhaan Ahmed, BCA 2nd Year
dezyneecole
 
OCA Java SE 8 Exam Chapter 3 Core Java APIs
İbrahim Kürce
 
Wrapper class
kamal kotecha
 
Java Wrapper Classes and I/O Mechanisms
Subhadra Sundar Chakraborty
 
Autoboxing and unboxing
Geetha Manohar
 
wrapper classes
Rajesh Roky
 
Ad

Viewers also liked (19)

PPTX
Java string handling
Salman Khan
 
PDF
Exception handling
Ravi Kant Sahu
 
PDF
Event handling
Ravi Kant Sahu
 
PDF
Multi threading
Ravi Kant Sahu
 
PDF
Packages
Ravi_Kant_Sahu
 
PDF
Introduction to Java Programming
Ravi Kant Sahu
 
PDF
Common Programming Errors by Beginners in Java
Ravi_Kant_Sahu
 
PDF
Packages
Ravi Kant Sahu
 
PDF
Distributed Programming (RMI)
Ravi Kant Sahu
 
PDF
Internationalization
Ravi Kant Sahu
 
PPSX
Concept of Object Oriented Programming
Prognoz Technologies Pvt. Ltd.
 
PDF
Networking
Ravi Kant Sahu
 
PDF
Servlets
Ravi Kant Sahu
 
PDF
April 2014
Siddharth Pereira
 
PPTX
String handling in_java
774474
 
PPSX
Java Object Oriented Programming
University of Potsdam
 
PPTX
Interesting Concept of Object Oriented Programming
Prognoz Technologies Pvt. Ltd.
 
PPTX
Open and Close Door ppt
Devyani Vaidya
 
PDF
Array
Ravi_Kant_Sahu
 
Java string handling
Salman Khan
 
Exception handling
Ravi Kant Sahu
 
Event handling
Ravi Kant Sahu
 
Multi threading
Ravi Kant Sahu
 
Packages
Ravi_Kant_Sahu
 
Introduction to Java Programming
Ravi Kant Sahu
 
Common Programming Errors by Beginners in Java
Ravi_Kant_Sahu
 
Packages
Ravi Kant Sahu
 
Distributed Programming (RMI)
Ravi Kant Sahu
 
Internationalization
Ravi Kant Sahu
 
Concept of Object Oriented Programming
Prognoz Technologies Pvt. Ltd.
 
Networking
Ravi Kant Sahu
 
Servlets
Ravi Kant Sahu
 
April 2014
Siddharth Pereira
 
String handling in_java
774474
 
Java Object Oriented Programming
University of Potsdam
 
Interesting Concept of Object Oriented Programming
Prognoz Technologies Pvt. Ltd.
 
Open and Close Door ppt
Devyani Vaidya
 
Ad

Similar to String handling(string class) (20)

PDF
String handling(string buffer class)
Ravi_Kant_Sahu
 
PPT
8. String
Nilesh Dalvi
 
PPT
Eo gaddis java_chapter_08_5e
Gina Bullock
 
PPT
Eo gaddis java_chapter_08_5e
Gina Bullock
 
PPTX
3.1 STRINGS (1) java jksdbkjdbsjsef.pptx
mohithn2004
 
PPTX
String.pptxihugyftgrfxdf bnjklihugyfthfgxvhbjihugyfthcgxcgvjhbkipoihougyfctgf...
minifriendofyou
 
PPT
07slide
Aboudi Sabbah
 
PDF
Java keywords
Ravi_Kant_Sahu
 
PDF
Keywords and classes
Ravi_Kant_Sahu
 
PPTX
Java String Handling
Infoviaan Technologies
 
PDF
Strings in java
Kuppusamy P
 
PPTX
In the given example only one object will be created. Firstly JVM will not fi...
Indu32
 
PDF
Arrays string handling java packages
Sardar Alam
 
PPT
Charcater and Strings.ppt Charcater and Strings.ppt
mulualem37
 
PPTX
String Operations.pptx
pateljay401233
 
PPT
LiangChapter4 Unicode , ASCII Code .ppt
zainiiqbal761
 
PPTX
String in java, string constructors and operations
manjeshbngowda
 
PPTX
Computer programming 2 Lesson 12
MLG College of Learning, Inc
 
PDF
Collection framework
Ravi_Kant_Sahu
 
PPT
CSC128_Part_1_WrapperClassesAndStrings_CenBNcj.ppt
rani marri
 
String handling(string buffer class)
Ravi_Kant_Sahu
 
8. String
Nilesh Dalvi
 
Eo gaddis java_chapter_08_5e
Gina Bullock
 
Eo gaddis java_chapter_08_5e
Gina Bullock
 
3.1 STRINGS (1) java jksdbkjdbsjsef.pptx
mohithn2004
 
String.pptxihugyftgrfxdf bnjklihugyfthfgxvhbjihugyfthcgxcgvjhbkipoihougyfctgf...
minifriendofyou
 
07slide
Aboudi Sabbah
 
Java keywords
Ravi_Kant_Sahu
 
Keywords and classes
Ravi_Kant_Sahu
 
Java String Handling
Infoviaan Technologies
 
Strings in java
Kuppusamy P
 
In the given example only one object will be created. Firstly JVM will not fi...
Indu32
 
Arrays string handling java packages
Sardar Alam
 
Charcater and Strings.ppt Charcater and Strings.ppt
mulualem37
 
String Operations.pptx
pateljay401233
 
LiangChapter4 Unicode , ASCII Code .ppt
zainiiqbal761
 
String in java, string constructors and operations
manjeshbngowda
 
Computer programming 2 Lesson 12
MLG College of Learning, Inc
 
Collection framework
Ravi_Kant_Sahu
 
CSC128_Part_1_WrapperClassesAndStrings_CenBNcj.ppt
rani marri
 

Recently uploaded (20)

PPTX
Contemporary Philippine arts from the region
mattygido
 
PDF
Hfxfitfidogaidsrixtocgockxifizhuffgoyfodti
WilfredSelorio
 
PDF
Regarding honorarium for the year 2025-26 human resources(XV-FC) approved und...
khankhan307705
 
PPT
avcjhbhb hheh jjewf jhhe jjhf jhj ppt.ppt
surjansandhu2009
 
PPTX
Shyrete Behluli alanian njeri slay yayayya
g52ps246s2
 
PPTX
Theatre of the Absurd: Understanding the Philosophy Behind Absurdist Drama
maxmag791
 
PDF
japanese style violent manga guts -v01.pdf
vsevolodovichnikolai
 
PPTX
90's Kallinvhvhvugguygubibiytggjrbkg.pptx
bhaswatideka11
 
PDF
3Below Moon fight sequence which happens on the moon
Max Lawson
 
PPTX
CODE REDPOIUYTRESDAZDXFGHJKLIUYTRDF.pptx
dilludcruz
 
PPTX
Superman Template Design “Superman,” DC Studios’ first feature film to hit th...
timesidiomasaulas
 
PDF
The Serious Men A novel by Manu Joseph.pdf
AmaanMirza17
 
PPTX
Bill and Lalu prasad yadav jokes to laugh.pptx
PRAKASHBHATTARAI32
 
PDF
Personal storyboard project for the ol’ portfolio
Max Lawson
 
PDF
Scene from Dawn of the Croods animated series 01
Max Lawson
 
PPTX
电子版本制作约克圣约翰大学毕业证学历认证学位证展示学历学位证制作
6b9ab940
 
PPTX
wavegamhjhvhjghjfyufffghfghing_finaldeck.pptx
sampleacc835
 
PDF
Keep It Short: India's Talent Launchpad for Filmmakers
Cinystore Technologies
 
DOCX
The Unseen Guardian_ Why a Sports Safety Helmet is Essential for Every Child'...
Custom Printing Boxes
 
PPTX
Understanding RCS Communication Features and Benefits_ (1).pptx
Times Mobile
 
Contemporary Philippine arts from the region
mattygido
 
Hfxfitfidogaidsrixtocgockxifizhuffgoyfodti
WilfredSelorio
 
Regarding honorarium for the year 2025-26 human resources(XV-FC) approved und...
khankhan307705
 
avcjhbhb hheh jjewf jhhe jjhf jhj ppt.ppt
surjansandhu2009
 
Shyrete Behluli alanian njeri slay yayayya
g52ps246s2
 
Theatre of the Absurd: Understanding the Philosophy Behind Absurdist Drama
maxmag791
 
japanese style violent manga guts -v01.pdf
vsevolodovichnikolai
 
90's Kallinvhvhvugguygubibiytggjrbkg.pptx
bhaswatideka11
 
3Below Moon fight sequence which happens on the moon
Max Lawson
 
CODE REDPOIUYTRESDAZDXFGHJKLIUYTRDF.pptx
dilludcruz
 
Superman Template Design “Superman,” DC Studios’ first feature film to hit th...
timesidiomasaulas
 
The Serious Men A novel by Manu Joseph.pdf
AmaanMirza17
 
Bill and Lalu prasad yadav jokes to laugh.pptx
PRAKASHBHATTARAI32
 
Personal storyboard project for the ol’ portfolio
Max Lawson
 
Scene from Dawn of the Croods animated series 01
Max Lawson
 
电子版本制作约克圣约翰大学毕业证学历认证学位证展示学历学位证制作
6b9ab940
 
wavegamhjhvhjghjfyufffghfghing_finaldeck.pptx
sampleacc835
 
Keep It Short: India's Talent Launchpad for Filmmakers
Cinystore Technologies
 
The Unseen Guardian_ Why a Sports Safety Helmet is Essential for Every Child'...
Custom Printing Boxes
 
Understanding RCS Communication Features and Benefits_ (1).pptx
Times Mobile
 

String handling(string class)

  • 1. Programming in Java Lecture 12: String Handling By Ravi Kant Sahu Asst. Professor Lovely Professional University, PunjabLovely Professional University, Punjab
  • 2. Introduction  Every string we create is actually an object of type String.  String constants are actually String objects.  Example: System.out.println("This is a String, too");  Objects of type String are immutable i.e. once a String object is created, its contents cannot be altered. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India) String Constant
  • 3. Why String is Immutable or Final?  String has been widely used as parameter for many java classes e.g. for opening network connection we can pass hostname and port number as string ,  we can pass database URL as string for opening database connection,  we can open any file in Java by passing name of file as argument to File I/O classes.  In case if String is not immutable , this would lead serious security threat , means some one can access to any file for which he has authorization and then can change the file name either deliberately or accidentally and gain access of those file. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 4. Introduction  In java, four predefined classes are provided that either represent strings or provide functionality to manipulate them. Those classes are: ◦ String ◦ StringBuffer ◦ StringBuilder ◦ StringTokenizer  String, StringBuffer, and StringBuilder classes are defined in java.lang package and all are final.  All three implement the CharSequence interface. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 5. Why String Handling? String handling is required to perform following operations on some string:  compare two strings  search for a substring  concatenate two strings  change the case of letters within a string Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 6. Creating String objects class StringDemo { public static void main(String args[]) { String strOb1 = “Ravi"; String strOb2 = “LPU"; String strOb3 = strOb1 + " and " + strOb2; System.out.println(strOb1); System.out.println(strOb2); System.out.println(strOb3); } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 7. String Class String Constructor: public String () public String (String) public String (char []) public String (byte []) public String (char [], int offset, int no_of_chars) public String (byte [], int offset, int no_of _bytes) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 8. Examples char [] a = {'c', 'o', 'n', 'g', 'r', 'a', 't', 's'}; byte [] b = {82, 65, 86, 73, 75, 65, 78, 84}; String s1 = new String (a); System.out.println(s1); String s2 = new String (a, 1,5); System.out.println(s2); String s3 = new String (s1); System.out.println(s3); String s4 = new String (b); System.out.println(s4); String s5 = new String (b, 4, 4); System.out.println(s5); Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 9. String Concatenation  Concatenating Strings: String age = "9"; String s = "He is " + age + " years old."; System.out.println(s);  Using concatenation to prevent long lines: String longStr = “This could have been” + “a very long line that would have” + “wrapped around. But string”+ “concatenation prevents this.”; System.out.println(longStr); Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 10. String Concatenation with Other Data Types  We can concatenate strings with other types of data. Example: int age = 9; String s = "He is " + age + " years old."; System.out.println(s); Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 11. Methods of String class  String Length: length() returns the length of the string i.e. number of characters. int length() Example: char chars[] = { 'a', 'b', 'c' }; String s = new String(chars); System.out.println(s.length()); Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 12. Character Extraction  charAt(): used to obtain the character from the specified index from a string. public char charAt (int index); Example: char ch; ch = "abc".charAt(1); Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 13. Methods Cont…  getChars(): used to obtain set of characters from the string. public void getChars(int start_index, int end_index, char[], int offset) Example: String s = “KAMAL”; char b[] = new char [10]; b[0] = ‘N’; b[1] = ‘E’; b[2] = ‘E’; b[3] = ‘L’; s.getChars(0, 4, b, 4); System.out.println(b); Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 14. Methods Cont…  toCharArray(): returns a character array initialized by the contents of the string. public char [] toChar Array(); Example: String s = “India”; char c[] = s.toCharArray(); for (int i=0; i<c.length; i++) { if (c[i]>= 65 && c[i]<=90) c[i] += 32; System.out.print(c[i]); } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 15. String Comparison  equals(): used to compare two strings for equality. Comparison is case-sensitive. public boolean equals (Object str)  equalsIgnoreCase( ): To perform a comparison that ignores case differences. Note:  This method is defined in Object class and overridden in String class.  equals(), in Object class, compares the value of reference not the content.  In String class, equals method is overridden for content-wise comparison of two strings. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 16. Example class equalsDemo { public static void main(String args[]) { String s1 = "Hello"; String s2 = "Hello"; String s3 = "Good-bye"; String s4 = "HELLO"; System.out.println(s1 + " equals " + s2 + " -> " + s1.equals(s2)); System.out.println(s1 + " equals " + s3 + " -> " + s1.equals(s3)); System.out.println(s1 + " equals " + s4 + " -> " + s1.equals(s4)); System.out.println(s1 + " equalsIgnoreCase " + s4 + " -> “ +s1.equalsIgnoreCase(s4)); } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 17. String Comparison  startsWith( ) and endsWith( ): ◦ The startsWith( ) method determines whether a given String begins with a specified string. ◦ Conversely, endsWith( ) determines whether the String in question ends with a specified string. boolean startsWith(String str) boolean endsWith(String str) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 18. String Comparison compareTo( ):  A string is less than another if it comes before the other in dictionary order.  A string is greater than another if it comes after the other in dictionary order. int compareTo(String str) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 19. Example class SortString { static String arr[] = {"Now", "is", "the", "time", "for", "all", "good", "men", "to", "come", "to", "the", "aid", "of", "their", "country"}; public static void main(String args[]) { for(int j = 0; j < arr.length; j++) { for(int i = j + 1; i < arr.length; i++) { if(arr[i].compareTo(arr[j]) < 0) { String t = arr[j]; arr[j] = arr[i]; arr[i] = t; } } System.out.println(arr[j]); } } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 20. Searching Strings  The String class provides two methods that allow us to search a string for a specified character or substring: indexOf( ): Searches for the first occurrence of a character or substring. int indexOf(int ch) lastIndexOf( ): Searches for the last occurrence of a character or substring. int lastIndexOf(int ch)  To search for the first or last occurrence of a substring, use int indexOf(String str) int lastIndexOf(String str) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 21.  We can specify a starting point for the search using these forms: int indexOf(int ch, int startIndex) int lastIndexOf(int ch, int startIndex) int indexOf(String str, int startIndex) int lastIndexOf(String str, int startIndex)  Here, startIndex specifies the index at which point the search begins.  For indexOf( ), the search runs from startIndex to the end of the string.  For lastIndexOf( ), the search runs from startIndex to zero. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 22. Example class indexOfDemo { public static void main(String args[]) { String s = "Now is the time for all good men " + "to come to the aid of their country."; System.out.println(s); System.out.println("indexOf(t) = " + s.indexOf('t')); System.out.println("lastIndexOf(t) = " + s.lastIndexOf('t')); System.out.println("indexOf(the) = " + s.indexOf("the")); System.out.println("lastIndexOf(the) = " + s.lastIndexOf("the")); System.out.println("indexOf(t, 10) = " + s.indexOf('t', 10)); System.out.println("lastIndexOf(t, 60) = " + s.lastIndexOf('t', 60)); System.out.println("indexOf(the, 10) = " + s.indexOf("the", 10)); System.out.println("lastIndexOf(the, 60) = " + s.lastIndexOf("the", 60)); } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 23. Modifying a String  Because String objects are immutable, whenever we want to modify a String, it will construct a new copy of the string with modifications.  substring(): used to extract a part of a string. public String substring (int start_index) public String substring (int start_index, int end_index) Example: String s = “ABCDEFG”; String t = s.substring(2); System.out.println (t); String u = s.substring (1, 4); System.out.println (u); Note: Substring from start_index to end_index-1 will be returned. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 24. concat( ): used to concatenate two strings. String concat(String str)  This method creates a new object that contains the invoking string with the contents of str appended to the end.  concat( ) performs the same function as +. Example: String s1 = "one"; String s2 = s1.concat("two");  It generates the same result as the following sequence: String s1 = "one"; String s2 = s1 + "two"; Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
  • 25. replace( ): The replace( ) method has two forms.  The first replaces all occurrences of one character in the invoking string with another character. It has the following general form: String replace(char original, char replacement)  Here, original specifies the character to be replaced by the character specified by replacement. Example: String s = "Hello".replace('l', 'w');  The second form of replace( ) replaces one character sequence with another. It has this general form: String replace(CharSequence original, CharSequence replacement) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
  • 26. trim( )  The trim( ) method returns a copy of the invoking string from which any leading and trailing whitespace has been removed. String trim( ) Example: String s = " Hello World ".trim(); This puts the string “Hello World” into s. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
  • 27. Changing the Case of Characters Within a String toLowerCase() & toUpperCase()  Both methods return a String object that contains the uppercase or lowercase equivalent of the invoking String. String toLowerCase( ) String toUpperCase( ) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab
  • 28. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)