Monday, 12 September 2011

StringBuffer class in Java

In this example you will learn about StringBuffer class. This example explains how you can use functions provided by the StringBuffer class like append, insert, reverse, setCharAt, charAt, length, deleteCharAt, substring, delete, capacity etc. to manipulate the string operation in your program.
The StringBuffer class is used to represent characters that can be modified. This is simply used for concatenation or manipulation of the strings.
StringBuffer is mainly used for the dynamic string concatenation which enhances the performance. A string buffer implements a mutable sequence of characters. A string buffer is like a String, but can be modified. At any point in time it contains some particular sequence of characters, but the length and content of the sequence can be changed through certain method calls. There are some functions used in the given example. All the functions have been explained below with example :
append()
This is the append() function used for the concatenate the string in string buffer. This is better to use for dynamic string concatenation. This function works like a simple string concatenation such as : String str = str + "added string";.
insert()
This is the insert() function used to insert any string or character at the specified position in the given string.
reverse()
This is the reverse() function used to reverse the string present in string buffer.
setCharAt()
This is the setCharAt() function which is used to set the specified character in buffered string at the specified position of the string in which you have to set the given character.
charAt()
This is the charAt() function which is used to get the character at the specified position of the given string.
substring()
This is the substring() function which is used to get the sub string from the buffered string from the initial position to end position (these are fixed by you in the program).
deleteCharAt()
This is the deleteCharAt() function which is used to delete the specific character from the buffered string by mentioning that's position in the string.
length()
This is the length() function is used to finding the length of the buffered string.
delete()
This is the delete() function is used to delete multiple character at once from n position to m position (n and m are will be fixed by you.) in the buffered string.
capacity()
This is the capacity() function is used to know about the current characters kept which is displayed like : number of characters + 6.
Code for the program :
import java.io.*;

public class stringBuffer{
  public static void main(String[] args) throws Exception{
  BufferedReader in = 
new 
BufferedReader(new InputStreamReader(System.in));
  String str;
  try{
  System.out.print("Enter your name: ");
  str = in.readLine();
  str += ",
This is the example of SringBuffer class and it's functions."
;

  //Create a object of StringBuffer class
  StringBuffer strbuf = new StringBuffer();
  strbuf.append(str);
  System.out.println(strbuf);
  strbuf.delete(0,str.length());
  
  //append()
  strbuf.append("Hello");
  strbuf.append("World");   
//print HelloWorld
  System.out.println(strbuf);
  
  //insert()
  strbuf.insert(5,"_Java "); 
//print Hello_Java World
  System.out.println(strbuf);
    
  //reverse()
  strbuf.reverse();
  System.out.print("Reversed string : ");
  System.out.println(strbuf);    
//print dlroW avaJ_olleH

  strbuf.reverse();
  System.out.println(strbuf);  
//print Hello_Java World

  
  //setCharAt()
  strbuf.setCharAt(5,' ');
  System.out.println(strbuf);    
//prit Hello Java World

  
  //charAt()
  System.out.print("Character at 6th position : ");
  System.out.println(strbuf.charAt(6));   
//print J
  
  //substring()
  System.out.print("Substring from position 3 to 6 : ");
  System.out.println(strbuf.substring(3,7)); 
//print lo J
  
  //deleteCharAt()
  strbuf.deleteCharAt(3);
  System.out.println(strbuf);  
//print Helo java World

  
  //capacity()
  System.out.print("Capacity of StringBuffer object : ");
  System.out.println(strbuf.capacity());    //print 21
  
  //delete() and length()
  strbuf.delete(6,strbuf.length());    
  System.out.println(strbuf);    
//no anything

  }
  catch(StringIndexOutOfBoundsException e){
  System.out.println(e.getMessage());
  }
  }
}
Download String Buffer Class Example

No comments: