Multiple choice technology programming languages

ZZZ (Duplicate) - What is the output of the following, StringBuffer sb1 = new StringBuffer("Debopam"); StringBuffer sb2= new StringBuffer("Debopam "); String ss1 = " Debopam "; System.out.println(sb1==sb2); System.out.println(sb1.equals(sb2)); System.out.println(sb1.equals(ss1)); System.out.println("Poddar".substring(3));

  1. false false false dar

  2. false true false Poddar

  3. Compiler Error

  4. true true FALSE dar

Reveal answer Fill a bubble to check yourself
A Correct answer
Explanation

The code tests reference and value equality. sb1 == sb2 is false (different objects). StringBuffer doesn't override equals(), so sb1.equals(sb2) is false (uses Object.equals()). sb1.equals(ss1) is false (StringBuffer vs String - different types). 'Poddar'.substring(3) returns 'dar' (0-indexed, starts from 'd'). Output: false false false dar