Java String and StringBuffer: Immutable vs Mutable

 
 
 
JAVA – String Function
 
PROF. S. LAKSHMANAN,
PROF. S. LAKSHMANAN,
DEPT. OF B. VOC. (SD & SA),
DEPT. OF B. VOC. (SD & SA),
ST. JOSEPH'S COLLEGE.
ST. JOSEPH'S COLLEGE.
 
String
 
 
     Strings, which are widely used in Java programming, are a sequence of
characters
 
    Once a String object is created it cannot be changed. Stings are Immutable.
    To get changeable strings use the class called StringBuffer.
 
    String and StringBuffer classes are declared final, so there cannot be subclasses
of these classes.
 
    The default constructor creates an empty string.
        String s = new String();
 
 
 
 
 
 
Creating Strings
 
The most direct way to create a string is to write:
 
                     String greeting = "Hello world!";
 
Eg:
          char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
          String helloString = new String(helloArray);
          System.out.println(helloString);
 
 
 
Creation of StringBuffer
 
              
we have used the following StringBuffer Constructors.
 
StringBuffer()
 //Default Constructor with 16 characters set
 
StringBuffer(String s) 
//String to String Buffer
 
StringBuffer(int initialCapacity)
 //StringBuffer?s with initial Capacity
 
 
 
 
 
Example for Stringbuffer
 
public class StringBufferExample
{
  public static void main(String[] args)
 {
  StringBuffer strBuffer1 = new StringBuffer("Bonjour");
  StringBuffer strBuffer2 = new StringBuffer(60);
  StringBuffer strBuffer3 = new StringBuffer();
  System.out.println("strBuffer1 : " +strBuffer1);
  System.out.println("strBuffer2 capacity : " +strBuffer2.capacity());
  System.out.println("strBuffer3 capacity : " +strBuffer3.capacity());
  }
}
 
 
 
 
Compare (== operator)
 
 
 
public class stringmethod
{
  public static void main(String[] args)
{
  String string1 = "Hi";
  String string2 = new String("Hello");
  if (string1 == string2)
{
  System.out.println("The strings are equal.");
  } else
 {
  System.out.println("The strings are unequal.");
  }
  }
}
 
 
 
Concatenating Strings
 
public class StringDemo
{
 public static void main(String args[])
  {
 String string1 = "saw I was ";
 System.out.println("Dot " + string1 + "Tod");
   }
}
 
 
 
String  Handlings
 
charAt(index); equals(obj)
 
compareTo(anotherString);
 
compareToIgnoreCase(String str);
 
concat(String str);
 
endsWith(String suffix);
 
toLowerCase(), toUpperCase()
 
equalsIgnoreCase(String anotherString);
 
indexOf(String str);
 
indexOf(int ch);, trim()
 
indexOf(String str,int fromindex);
 
                             toCharArray();
 
indexOf(int ch,int fromindex);
 
 
 
 
 
 
 
 
 
 
lastIndexOf(String str);
 
lastIndexOf(int ch);
 
lastIndexOf(String str,int fromindex);
 
lastIndexOf(int ch,int fromindex);
 
length();
 
replace(oldChar, newChar)
 
replaceAll(String old, String new)
 
replaceFirst(String old, String new)
 
split(str)
 
startsWith(String prefix);
 
substring(beginIndex)
 
substring(beginIndex, endIndex)
 
 
 
 
 
 
 
 
 
 
 
public class StringDemo
{
public static void main(String args[])
{
 String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
System.out.println( "String Length is : " + len );
}
 }
 
 
String Length
 
Methods
 
 
 
charAt()
 
public class Test
{
 public static void main(String args[])
{
String s = "Strings are immutable";
char result = s.charAt(8);
System.out.println(result);
 }
 }
 
 
 
 
 
compareTo()
 
public class Test
{
public static void main(String args[])
{
String str1 = "Strings are immutable";
String str2 = "Strings are immutable";
String str3 = "Integers are not immutable";
int result = str1.compareTo( str2 ); System.out.println(result);
result = str2.compareTo( str3 ); System.out.println(result);
result = str3.compareTo( str1 ); System.out.println(result);
}
}
 
 
 
compareToIgnoreCase()
 
public class Test
{
 public static void main(String args[])
{
String str1 = "Strings are immutable";
String str2 = "Strings are immutable";
String str3 = "Integers are not immutable"; int result =
str1.compareToIgnoreCase( str2 ); System.out.println(result);
result = str2.compareToIgnoreCase( str3 );
System.out.println(result);
result = str3.compareToIgnoreCase( str1 );
System.out.println(result);
 }
}
 
 
 
concat()
 
public class Test
{
 public static void main(String args[])
{
 String s = "Strings are immutable";
 s = s.concat(" all the time"); System.out.println(s);
 }
}
 
 
 
Methods — Equality
 
boolean b = word1.equals(word2);
 
returns true if the string word1 is equal to word2
boolean b = word1.equalsIgnoreCase(word2);
 
returns true if the string word1 matches word2, case-
blind
b = “Raiders”.equals(“Raiders”);//true
b = “Raiders”.equals(“raiders”);//false
b = “Raiders”.equalsIgnoreCase(“raiders”);//true
if(team.equalsIgnoreCase(“raiders”))
 
System.out.println(“Go You “ + team);
 
 
import java.io.*;
public class Test
{
 public static void main(String args[])
{
 String Str = new String("  Welcome to
 
Capella  ");
 System.out.print("Return Value :" );
 System.out.println(Str.trim() );
}
}
 
trim()
 
 
 
substring(int beginIndex)
 
public class StrSearch{
  public static void main(String args[])
{
  String s = "Bonjour";
  //String begin = 1;
  String t = s.substring(1);
  System.out.println(t);
  }
}
 
 
 
 
substring(int beginIndex, int endIndex)
 
 
public class StringSearch{
  public static void main(String args[])
{
  String s = "Bonjour";
  //String begin = 3;
  //String end = 7;
  String t = s.substring(3, 7);
  System.out.println(t);
  }
  }
 
 
 
Methods — Find (indexOf)
 
String name =“President George Washington";
 
name
.indexOf (‘P');
  
      0
name
.indexOf (‘e');
  
      2
name
.indexOf (“George");
 
    10
name
.indexOf (‘e', 3);
  
      6
 
name
.indexOf (“Bob");
 
    -1
name
.lastIndexOf (‘e');
 
    15
 
Returns:
   (not found)
(starts searching
at position 3)
 0  2      6     10         15
 
 
 
indexOf(int ch)
 
public class indexOfString
{
  public static void main(String args[])
 {
  String s = "That was the breaking News";
  System.out.println(s);
 System.out.println("indexOf(the)  " + s.indexOf('b'));
   }
  }
 
 
 
 
indexOf(int ch, int fromIndex)
 
public class IndexOfChar
{
  public static void main(String args[])
{
  String s = "Honesty is the best Policy";
  System.out.println(s);
  System.out.println("indexOf(n, 1) -> " + s.indexOf('b', 1));
  System.out.println("indexOf(n, 1) -> " + s.indexOf(98, 1));
  }
  }
 
 
 
 
indexOf(String str, int fromIndex)
 
public class IndexOfStr {
  public static void main(String args[])
{
  String s = "That was the breaking News";
  System.out.println(s);
  System.out.println("indexOf(News, 5) -> " + s.indexOf("News", 5));
  }
  }
 
 
 
 
lastIndexOf(int ch)
 
public class LastIndexOfCh
{
  public static void main(String args[]) {
  String s = "Honesty is the best Policy";
  System.out.println(s);
    System.out.println("lastIndexOf(b) " + s.lastIndexOf('b'));
  }
  }
 
 
 
 
lastIndexOf(String str)
 
 
public class LastIndxOfStr
{
  public static void main(String args[])
{
  String s = "Honesty is the best Policy";
  System.out.println(s);
  System.out.println("lastIndexOf(the) -> " + s.lastIndexOf("nest"));
  }
  }
 
 
 
 
 
lastIndexOf(String str, int fromIndex)
 
 
 
public class lastindexofStrInd
{
  public static void main(String args[])
{
  String s = "Java is a wonderful language";
  System.out.println(s);
  System.out.println("lastIndexOf(ful, 18) = " + s.lastIndexOf("ful", 18));
  }
  }
 
 
 
 
replaceFirst() Method
 
public class ReplaceFirstDemo
{
  public static void main(String[] args)
{
  String str = "Her name is jeni and jeni is a good girl.";
  String strreplace = “kanika";
  String result = str.replaceFirst(“jeni", strreplace);
  System.out.println(result);
  }
}
 
 
public class ReplaceDemo
 {
  public static void main(String[] args)
 {
  String str = "Her name is jenifer and  jenifer  is a good girl.";
  String strreplace = "Sonia";
  String result = str.replaceAll(“jenifer ", strreplace);
  System.out.println(result);
  }
}
 
replaceAll()
 
 
 
toLowerCase and toUpperCase
 
public class MainClass
{
   public static void main( String args[] )
   {
      String s1 = new String( "hello" );
      String s2 = new String( "GOODBYE" );
      String s3 = new String( "   spaces   " );
      System.out.printf( "s1 = \ns2 = \ns3 = \n\n", s1, s2, s3 );
      // test toLowerCase and toUpperCase
      System.out.printf( "s1.toUpperCase() = %s\n", s1.toUpperCase() );
      System.out.printf( "s2.toLowerCase() = %s\n\n", s2.toLowerCase() );
   }
}
 
 
reverse()
 
public class StringReverseExample {
  public static void main(String args[]){
    String strOriginal = "Hello World";
    System.out.println("Original String : " + strOriginal);
    strOriginal = new StringBuffer(strOriginal).reverse();
    System.out.println("Reversed String :" + strOriginal);
  }
}
 
 
Numbers 
to
 Strings
 
Three ways to convert a number into a string:
1.   String s = "" + num;
 
2.   String s = Integer.toString (i);
      String s = Double.toString (d);
3.   String s = String.valueOf (num);
Integer
 and 
Double
 are
“wrapper” classes from
java.lang
 that represent
numbers as objects.
They also provide useful
static methods.
s = String.valueOf(123);//”123”
s = “” + 123;//”123”
s = Integer.toString(123);//”123”
s = Double.toString(3.14); //”3.14”
 
 
 
To remove a character
 
public class Main {
  public static void main(String args[]) {
    String str = "this is a test";
    System.out.println(removeChar(str,'s'));
  }
  public static String removeChar(String s, char c)
{
    String r = "";
    for (int i = 0; i < s.length(); i++) {
      if (s.charAt(i) != c)
        r += s.charAt(i);
    }
    return r;
  }
}
 
 
import java.lang.*;
public class StrStartWith{
  public static void main(String[] args) {
  System.out.println("String start with example!");
  String str = "Welcome to Capella";
  String start = "Wel";
  System.out.println("Given String : " + str);
  System.out.println("Start with : " + start);
  if (str.startsWith(start)){
  System.out.println("The given string is start with Wel");
  }
  else{
  System.out.println("The given string is not start with Wel");
  }
  }
}
 
Start with
 
 
 
End with
 
import java.lang.*;
public class StrEndWith{
  public static void main(String[] args) {
  System.out.println("String end with example!");
  String str = "Welcome to RoseIndia";
  String end = "RoseIndia";
  System.out.println("Given String : " + str);
  System.out.println("End with : " + end);
  if (str.endsWith(end)){
  System.out.println("The given string is end with RoseIndia");
  }
  else{
  System.out.println("The given string is not end with RoseIndia");
  }
  }
}
 
 
 
split string
class StringSplitExample
 {
        public static void main(String[] args)
{
                String st = "Hello_World";
                String str[] = st.split("_");
                for (int i = 0; i < str.length; i++)
 {
                        System.out.println(str[i]);
                }
        }
}
 
 
 
Making Tokens of a String
 
Tokens can be used where we want to break an application into tokens.
 
StringTokenizer
 is a class in java.util.package.
 
Methods in string tokenizer
 
countTokens(): It gives the number of tokens remaining in
the string.
 
hasMoreTokens(): It gives true if more tokens are available,
else false.
 
nextToken(): It gives the next token available in the string.
 
 
 
Thank You.
Slide Note
Embed
Share

Strings in Java are immutable sequence of characters, while StringBuffer provides mutable string objects. Learn about creating, manipulating, and comparing strings in Java programming. Explore the differences between immutable strings and mutable string buffers, and how to concatenate strings effectively.

  • Java Programming
  • Strings
  • StringBuffer
  • Immutable
  • Mutable

Uploaded on Oct 03, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. JAVA JAVA String Function String Function PROF. S. LAKSHMANAN, DEPT. OF B. VOC. (SD & SA), ST. JOSEPH'S COLLEGE.

  2. String Strings, which are widely used in Java programming, are a sequence of characters Once a String object is created it cannot be changed. Stings are Immutable. To get changeable strings use the class called StringBuffer. String and StringBuffer classes are declared final, so there cannot be subclasses of these classes. The default constructor creates an empty string. String s = new String();

  3. Creating Strings The most direct way to create a string is to write: String greeting = "Hello world!"; Eg: char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' }; String helloString = new String(helloArray); System.out.println(helloString);

  4. Creation of StringBuffer we have used the following StringBuffer Constructors. StringBuffer() //Default Constructor with 16 characters set StringBuffer(String s) //String to String Buffer StringBuffer(int initialCapacity) //StringBuffer?s with initial Capacity

  5. Example for Stringbuffer public class StringBufferExample { public static void main(String[] args) { StringBuffer strBuffer1 = new StringBuffer("Bonjour"); StringBuffer strBuffer2 = new StringBuffer(60); StringBuffer strBuffer3 = new StringBuffer(); System.out.println("strBuffer1 : " +strBuffer1); System.out.println("strBuffer2 capacity : " +strBuffer2.capacity()); System.out.println("strBuffer3 capacity : " +strBuffer3.capacity()); } }

  6. Compare (== operator) public class stringmethod { public static void main(String[] args) { String string1 = "Hi"; String string2 = new String("Hello"); if (string1 == string2) { System.out.println("The strings are equal."); } else { System.out.println("The strings are unequal."); } } }

  7. Concatenating Strings public class StringDemo { public static void main(String args[]) { String string1 = "saw I was "; System.out.println("Dot " + string1 + "Tod"); } }

  8. String Handlings lastIndexOf(String str); charAt(index); equals(obj) lastIndexOf(int ch); compareTo(anotherString); lastIndexOf(String str,int fromindex); compareToIgnoreCase(String str); lastIndexOf(int ch,int fromindex); concat(String str); length(); endsWith(String suffix); replace(oldChar, newChar) toLowerCase(), toUpperCase() replaceAll(String old, String new) equalsIgnoreCase(String anotherString); replaceFirst(String old, String new) indexOf(String str); split(str) indexOf(int ch);, trim() startsWith(String prefix); indexOf(String str,int fromindex); substring(beginIndex) toCharArray(); substring(beginIndex, endIndex) indexOf(int ch,int fromindex);

  9. Methods String Length public class StringDemo { public static void main(String args[]) { String palindrome = "Dot saw I was Tod"; int len = palindrome.length(); System.out.println( "String Length is : " + len ); } }

  10. charAt() public class Test { public static void main(String args[]) { String s = "Strings are immutable"; char result = s.charAt(8); System.out.println(result); } }

  11. compareTo() public class Test { public static void main(String args[]) { String str1 = "Strings are immutable"; String str2 = "Strings are immutable"; String str3 = "Integers are not immutable"; int result = str1.compareTo( str2 ); System.out.println(result); result = str2.compareTo( str3 ); System.out.println(result); result = str3.compareTo( str1 ); System.out.println(result); } }

  12. compareToIgnoreCase() public class Test { public static void main(String args[]) { String str1 = "Strings are immutable"; String str2 = "Strings are immutable"; String str3 = "Integers are not immutable"; int result = str1.compareToIgnoreCase( str2 ); System.out.println(result); result = str2.compareToIgnoreCase( str3 ); System.out.println(result); result = str3.compareToIgnoreCase( str1 ); System.out.println(result); } }

  13. concat() public class Test { public static void main(String args[]) { String s = "Strings are immutable"; s = s.concat(" all the time"); System.out.println(s); } }

  14. Methods Equality boolean b = word1.equals(word2); returns true if the string word1 is equal to word2 boolean b = word1.equalsIgnoreCase(word2); returns true if the string word1 matches word2, case- blind b = Raiders .equals( Raiders );//true b = Raiders .equals( raiders );//false b = Raiders .equalsIgnoreCase( raiders );//true if(team.equalsIgnoreCase( raiders )) System.out.println( Go You + team);

  15. trim() import java.io.*; public class Test { public static void main(String args[]) { String Str = new String(" Welcome to Capella "); System.out.print("Return Value :" ); System.out.println(Str.trim() ); } }

  16. substring(int beginIndex) public class StrSearch{ public static void main(String args[]) { String s = "Bonjour"; //String begin = 1; String t = s.substring(1); System.out.println(t); } }

  17. substring(int beginIndex, int endIndex) public class StringSearch{ public static void main(String args[]) { String s = "Bonjour"; //String begin = 3; //String end = 7; String t = s.substring(3, 7); System.out.println(t); } }

  18. Methods Find (indexOf) 0 2 6 10 15 String name = President George Washington"; Returns: name.indexOf ( P'); name.indexOf ( e'); name.indexOf ( George"); name.indexOf ( e', 3); 0 2 10 6 (starts searching at position 3) name.indexOf ( Bob"); name.lastIndexOf ( e'); -1 15 (not found)

  19. indexOf(int ch) public class indexOfString { public static void main(String args[]) { String s = "That was the breaking News"; System.out.println(s); System.out.println("indexOf(the) " + s.indexOf('b')); } }

  20. indexOf(int ch, int fromIndex) public class IndexOfChar { public static void main(String args[]) { String s = "Honesty is the best Policy"; System.out.println(s); System.out.println("indexOf(n, 1) -> " + s.indexOf('b', 1)); System.out.println("indexOf(n, 1) -> " + s.indexOf(98, 1)); } }

  21. indexOf(String str, int fromIndex) public class IndexOfStr { public static void main(String args[]) { String s = "That was the breaking News"; System.out.println(s); System.out.println("indexOf(News, 5) -> " + s.indexOf("News", 5)); } }

  22. lastIndexOf(int ch) public class LastIndexOfCh { public static void main(String args[]) { String s = "Honesty is the best Policy"; System.out.println(s); System.out.println("lastIndexOf(b) " + s.lastIndexOf('b')); } }

  23. lastIndexOf(String str) public class LastIndxOfStr { public static void main(String args[]) { String s = "Honesty is the best Policy"; System.out.println(s); System.out.println("lastIndexOf(the) -> " + s.lastIndexOf("nest")); } }

  24. lastIndexOf(String str, int fromIndex) public class lastindexofStrInd { public static void main(String args[]) { String s = "Java is a wonderful language"; System.out.println(s); System.out.println("lastIndexOf(ful, 18) = " + s.lastIndexOf("ful", 18)); } }

  25. replaceFirst() Method public class ReplaceFirstDemo { public static void main(String[] args) { String str = "Her name is jeni and jeni is a good girl."; String strreplace = kanika"; String result = str.replaceFirst( jeni", strreplace); System.out.println(result); } }

  26. replaceAll() public class ReplaceDemo { public static void main(String[] args) { String str = "Her name is jenifer and jenifer is a good girl."; String strreplace = "Sonia"; String result = str.replaceAll( jenifer ", strreplace); System.out.println(result); } }

  27. toLowerCase and toUpperCase public class MainClass { public static void main( String args[] ) { String s1 = new String( "hello" ); String s2 = new String( "GOODBYE" ); String s3 = new String( " spaces " ); System.out.printf( "s1 = \ns2 = \ns3 = \n\n", s1, s2, s3 ); // test toLowerCase and toUpperCase System.out.printf( "s1.toUpperCase() = %s\n", s1.toUpperCase() ); System.out.printf( "s2.toLowerCase() = %s\n\n", s2.toLowerCase() ); } }

  28. reverse() public class StringReverseExample { public static void main(String args[]){ String strOriginal = "Hello World"; System.out.println("Original String : " + strOriginal); strOriginal = new StringBuffer(strOriginal).reverse(); System.out.println("Reversed String :" + strOriginal); } }

  29. Numbers to Strings Three ways to convert a number into a string: 1. String s = "" + num; s = + 123;// 123 Integer and Double are wrapper classes from java.lang that represent numbers as objects. They also provide useful static methods. 2. String s = Integer.toString (i); String s = Double.toString (d); s = Integer.toString(123);// 123 s = Double.toString(3.14); // 3.14 3. String s = String.valueOf (num); s = String.valueOf(123);// 123

  30. To remove a character public class Main { public static void main(String args[]) { String str = "this is a test"; System.out.println(removeChar(str,'s')); } public static String removeChar(String s, char c) { String r = ""; for (int i = 0; i < s.length(); i++) { if (s.charAt(i) != c) r += s.charAt(i); } return r; } }

  31. Start with import java.lang.*; public class StrStartWith{ public static void main(String[] args) { System.out.println("String start with example!"); String str = "Welcome to Capella"; String start = "Wel"; System.out.println("Given String : " + str); System.out.println("Start with : " + start); if (str.startsWith(start)){ System.out.println("The given string is start with Wel"); } else{ System.out.println("The given string is not start with Wel"); } } }

  32. End with import java.lang.*; public class StrEndWith{ public static void main(String[] args) { System.out.println("String end with example!"); String str = "Welcome to RoseIndia"; String end = "RoseIndia"; System.out.println("Given String : " + str); System.out.println("End with : " + end); if (str.endsWith(end)){ System.out.println("The given string is end with RoseIndia"); } else{ System.out.println("The given string is not end with RoseIndia"); } } }

  33. split string class StringSplitExample { public static void main(String[] args) { String st = "Hello_World"; String str[] = st.split("_"); for (int i = 0; i < str.length; i++) { System.out.println(str[i]); } } }

  34. Making Tokens of a String Tokens can be used where we want to break an application into tokens. StringTokenizer is a class in java.util.package. Methods in string tokenizer countTokens(): It gives the number of tokens remaining in the string. hasMoreTokens(): It gives true if more tokens are available, else false. nextToken(): It gives the next token available in the string.

  35. Thank You.

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#