0% found this document useful (0 votes)
2 views11 pages

Strings in Java

Java string

Uploaded by

abdul9390199
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views11 pages

Strings in Java

Java string

Uploaded by

abdul9390199
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Strings in Java

1. What is a String in Java?


A String is a sequence of characters used to store text.
Example:
String name = "Java";
[Link](name);
Output:
Java
In Java, String is not a primitive data type. It is a class.
String s = "Hello";
Here:
• String → class
• s → reference variable
• "Hello" → String object
String belongs to:
[Link] package
No need to import it.

2. Creating Strings in Java


There are two ways:
1. String Literal
Most commonly used.
String s = "Java";
Java stores literals in a special memory area called:
String Constant Pool
Example:
String a = "Hello";
String b = "Hello";
Both refer to the same object.
Memory:
String Pool

"Hello"

|
a --------
b --------

2. Using new Keyword


Creates a new object.
String s = new String("Java");
Memory:
Heap Memory

"Java" object

s -------->
Example:
String a = new String("Hello");
String b = new String("Hello");

[Link](a==b);
Output:
false
Because both objects are different.
3. String is Immutable
Immutable means:
Once a String object is created, its value cannot be changed.
Example:
String s="Java";

s="Python";

[Link](s);
Output:
Python
What happened?
Old object:
Java
New object:
Python
Reference changed.
Original String is not modified.

4. Why String is Immutable?


Reasons:
1. Security
Strings are used for:
• passwords
• database connections
• file paths
Changing them can create security problems.
2. String Pool
Multiple variables share the same object.
3. Thread Safety
Immutable objects are safe in multiple threads.

5. String Class Methods


Java provides many built-in methods.

1. length()
Returns number of characters.
public class Main {
public static void main(String[] args){

String s="Java";

[Link]([Link]());

}
}
Output:
4

2. charAt()
Access character by index.
Index starts from 0.
J a v a
0 1 2 3
Program:
String s="Java";
[Link]([Link](2));
Output:
v

3. concat()
Joining strings.
String a="Hello";
String b="Java";

[Link]([Link](b));
Output:
HelloJava

4. String Concatenation (+)


String a="Hello";

String b=a+" World";

[Link](b);
Output:
Hello World

5. equals()
Checks content.
String a="Java";
String b="Java";

[Link]([Link](b));
Output:
true

6. == Operator
Checks reference.
String a=new String("Java");
String b=new String("Java");

[Link](a==b);
Output:
false

equals() vs ==
equals() ==
Compares values Compares memory address
Used for String comparison Reference comparison

7. equalsIgnoreCase()
Ignores uppercase/lowercase.
String a="JAVA";

[Link]([Link]("java"));
Output:
true

8. toUpperCase()
String s="java";

[Link]([Link]());
Output:
JAVA

9. toLowerCase()
String s="JAVA";

[Link]([Link]());
Output:
java

10. trim()
Removes spaces at beginning and end.
String s=" Java ";

[Link]([Link]());
Output:
Java

11. substring()
Extract part of String.
Syntax:
substring(start,end)
Example:
String s="Programming";

[Link]([Link](0,7));
Output:
Program

12. replace()
Replace characters.
String s="Java";

[Link]([Link]('a','o'));
Output:
Jovo

13. contains()
Checks existence.
String s="Java Programming";

[Link]([Link]("Java"));
Output:
true

14. startsWith()
String s="Java";

[Link]([Link]("Ja"));
Output:
true

15. endsWith()
String s="Java";

[Link]([Link]("va"));
Output:
true

16. indexOf()
Find position.
String s="Java";

[Link]([Link]('v'));
Output:
2

17. lastIndexOf()
String s="banana";

[Link]([Link]('a'));
Output:
5

18. split()
Break string into array.
String s="Java Python C";

String arr[]=[Link](" ");

for(String x:arr)
{
[Link](x);
}
Output:
Java
Python
C

19. isEmpty()
String s="";

[Link]([Link]());
Output:
true

6. Taking String Input


Scanner
import [Link];

class Main{

public static void main(String args[]){

Scanner sc=new Scanner([Link]);

String name=[Link]();

[Link](name);
}

}
Input:
Java
Output:
Java

nextLine()
Reads complete sentence.
String s=[Link]();
Input:
Java is easy
Output:
Java is easy

7. Traversing String
Using for loop:
class Main{

public static void main(String args[]){

String s="Java";

for(int i=0;i<[Link]();i++)
{
[Link]([Link](i));
}

}
Output:
J
a
v
a

8. StringBuilder in Java
Because String is immutable, repeated modifications are slow.
Solution:
StringBuilder
It is mutable.
Example:
class Main{

public static void main(String args[]){

StringBuilder sb=new StringBuilder("Java");

[Link](" Programming");

[Link](sb);

}
}
Output:
Java Programming

StringBuilder Methods
append()
[Link]("Hello");
insert()
[Link](0,"Hi ");
delete()
[Link](0,2);
reverse()
[Link]();

STRING PROGRAMS

1. Reverse a String
class Main{

public static void main(String args[]){

String s="Java";

String rev="";

for(int i=[Link]()-1;i>=0;i--)
{
rev=rev+[Link](i);
}

[Link](rev);

}
Output:
avaJ

2. Palindrome String
Example:
madam
Program:
class Main{

public static void main(String args[]){

String s="madam";

String rev="";

for(int i=[Link]()-1;i>=0;i--)
{
rev+=[Link](i);
}
if([Link](rev))
[Link]("Palindrome");

else
[Link]("Not Palindrome");

}
Output:
Palindrome

3. Count Vowels
class Main{

public static void main(String args[]){

String s="education";

int count=0;

for(int i=0;i<[Link]();i++)
{
char ch=[Link](i);

if(ch=='a'||ch=='e'||ch=='i'||ch=='o'||ch=='u')
{
count++;
}

[Link](count);

}
Output:
5

4. Count Characters
class Main{

public static void main(String args[]){

String s="java";

int count[]=new int[256];

for(int i=0;i<[Link]();i++)
{
count[[Link](i)]++;
}
for(int i=0;i<256;i++)
{
if(count[i]>0)
[Link]((char)i+" "+count[i]);
}

5. Remove Duplicate Characters


class Main{

public static void main(String args[]){

String s="programming";

String result="";

for(int i=0;i<[Link]();i++)
{
char ch=[Link](i);

if([Link](ch)==-1)
{
result+=ch;
}

[Link](result);

}
Output:
progamin

6. Check Anagram
import [Link];

class Main{

public static void main(String args[]){

String a="listen";
String b="silent";

char x[]=[Link]();
char y[]=[Link]();

[Link](x);
[Link](y);

if([Link](x,y))
[Link]("Anagram");

else
[Link]("Not Anagram");

7. Count Words
class Main{

public static void main(String args[]){

String s="Java is powerful";

String arr[]=[Link](" ");

[Link]([Link]);

}
Output:
3

Important Interview Questions


1. Reverse a String
2. Check palindrome
3. Count vowels
4. Remove duplicate characters
5. Find duplicate characters
6. Check anagram
7. Reverse words
8. Find longest word
9. String vs StringBuilder
10. Difference between == and equals()

This covers Java Strings from basic concepts → memory → methods →


StringBuilder → interview programs.
1. year % 400 == 0):
2. print(f"{year} is a leap year")
3. else:
4. print(f"{year} is not a leap year")

You might also like