কম্পিউটার টিউটোরিয়াল

জাভাতে String এবং StringBuffer ক্লাসের পার্থক্য

এই পোস্টে আমরা জাভাতে String এবং StringBuffer ক্লাসের পার্থক্য বুঝব।

String

  • এটি একটি ইমিউটেবল (immutable) ক্লাস।
  • অর্থাৎ ক্লাসের এলিমেন্টগুলো পরিবর্তন করা যায় না।
  • এটি ধীর (slow)।
  • স্ট্রিং ক্যাটেনেশন (concatenation) এর সময় কম মেমরি খরচ করে।
  • কারণ প্রতিবার একটি নতুন ইনস্ট্যান্স তৈরি হয়।
  • এটি Object ক্লাসের equals() মেথড ওভাররাইড করে।
  • সুতরাং দুটি স্ট্রিং তুলনা করার জন্য 'equals' মেথড ব্যবহার করা যায়।

String ক্লাসের উদাহরণ:

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); 
    } 
}

StringBuffer

  • এটি একটি মিউটেবল (mutable) ক্লাস।
  • অর্থাৎ এই ক্লাসের এলিমেন্টগুলো পরিবর্তন করা যায়।
  • এটি দ্রুত (fast)।
  • স্ট্রিং ক্যাটেনেশনের সময় কম মেমরি ব্যবহার করে।
  • এই ক্লাস Object ক্লাসের equals() মেথড ওভাররাইড করে না।

StringBuffer ক্লাসের উদাহরণ:

public class Demo { 
    public static void main(String args[]) { 
        StringBuffer sBuffer = new StringBuffer("test"); 
        sBuffer.append(" String Buffer"); 
        System.out.println(sBuffer); 
    } 
}
  1. জাভাতে StringBuffer এবং StringBuilder এর পার্থক্য

  2. জাভাতে ইনহেরিটেন্স এবং কম্পোজিশনের পার্থক্য

  3. জাভাতে Thread এবং Runnable-এর পার্থক্য

  4. জাভাতে Exception এবং Error-এর পার্থক্য